diff --git a/Alignment/CommonAlignmentProducer/python/ALCARECOTkAlMinBiasHI_cff.py b/Alignment/CommonAlignmentProducer/python/ALCARECOTkAlMinBiasHI_cff.py index 675b8f1f170ba..a6c6dff7ca17a 100644 --- a/Alignment/CommonAlignmentProducer/python/ALCARECOTkAlMinBiasHI_cff.py +++ b/Alignment/CommonAlignmentProducer/python/ALCARECOTkAlMinBiasHI_cff.py @@ -10,7 +10,7 @@ ALCARECOTkAlMinBiasHIDCSFilter = ALCARECOTkAlMinBiasDCSFilter.clone() ALCARECOTkAlMinBiasHI = ALCARECOTkAlMinBias.clone( - src = 'hiSelectedTracks' + src = 'hiGeneralTracks' ) seqALCARECOTkAlMinBiasHI = cms.Sequence(ALCARECOTkAlMinBiasHIHLT+ALCARECOTkAlMinBiasHIDCSFilter+ALCARECOTkAlMinBiasHI) diff --git a/CalibTracker/SiStripChannelGain/plugins/BuildFile.xml b/CalibTracker/SiStripChannelGain/plugins/BuildFile.xml index 45470defc6c2f..ab056b377868f 100644 --- a/CalibTracker/SiStripChannelGain/plugins/BuildFile.xml +++ b/CalibTracker/SiStripChannelGain/plugins/BuildFile.xml @@ -13,6 +13,7 @@ + diff --git a/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearnerFromCalibTree.cc b/CalibTracker/SiStripChannelGain/plugins/DeDxDiscriminatorLearner.cc similarity index 53% rename from RecoTracker/DeDx/plugins/DeDxDiscriminatorLearnerFromCalibTree.cc rename to CalibTracker/SiStripChannelGain/plugins/DeDxDiscriminatorLearner.cc index 3664c61bc5678..5444340080a3f 100644 --- a/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearnerFromCalibTree.cc +++ b/CalibTracker/SiStripChannelGain/plugins/DeDxDiscriminatorLearner.cc @@ -1,9 +1,9 @@ // -*- C++ -*- // -// Package: DeDxDiscriminatorLearnerFromCalibTree -// Class: DeDxDiscriminatorLearnerFromCalibTree +// Package: DeDxDiscriminatorLearner +// Class: DeDxDiscriminatorLearner // -/**\class DeDxDiscriminatorLearnerFromCalibTree DeDxDiscriminatorLearnerFromCalibTree.cc RecoTracker/DeDxDiscriminatorLearnerFromCalibTree/src/DeDxDiscriminatorLearnerFromCalibTree.cc +/**\class DeDxDiscriminatorLearner DeDxDiscriminatorLearner.cc RecoTracker/DeDxDiscriminatorLearner/src/DeDxDiscriminatorLearner.cc Description: @@ -19,9 +19,8 @@ // system include files #include -#include "RecoTracker/DeDx/plugins/DeDxDiscriminatorLearnerFromCalibTree.h" +#include "CalibTracker/SiStripChannelGain/plugins/DeDxDiscriminatorLearner.h" -//#include "DataFormats/TrackReco/interface/DeDxData.h" #include "DataFormats/TrackReco/interface/Track.h" #include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" @@ -33,9 +32,10 @@ using namespace reco; using namespace std; using namespace edm; -DeDxDiscriminatorLearnerFromCalibTree::DeDxDiscriminatorLearnerFromCalibTree(const edm::ParameterSet& iConfig) : ConditionDBWriter(iConfig) +DeDxDiscriminatorLearner::DeDxDiscriminatorLearner(const edm::ParameterSet& iConfig) : ConditionDBWriter(iConfig) { -std::cout << "TEST 0 " << endl; + m_tracksTag = consumes(iConfig.getParameter("tracks")); + m_trajTrackAssociationTag = consumes(iConfig.getParameter("trajectoryTrackAssociation")); P_Min = iConfig.getParameter ("P_Min" ); P_Max = iConfig.getParameter ("P_Max" ); @@ -47,112 +47,162 @@ std::cout << "TEST 0 " << endl; Charge_Max = iConfig.getParameter ("Charge_Max" ); Charge_NBins = iConfig.getParameter ("Charge_NBins"); - MinTrackTMomentum = iConfig.getUntrackedParameter ("minTrackMomentum" , 5.0); - MaxTrackTMomentum = iConfig.getUntrackedParameter ("maxTrackMomentum" , 99999.0); + MinTrackMomentum = iConfig.getUntrackedParameter ("minTrackMomentum" , 5.0); + MaxTrackMomentum = iConfig.getUntrackedParameter ("maxTrackMomentum" , 99999.0); MinTrackEta = iConfig.getUntrackedParameter ("minTrackEta" , -5.0); MaxTrackEta = iConfig.getUntrackedParameter ("maxTrackEta" , 5.0); MaxNrStrips = iConfig.getUntrackedParameter("maxNrStrips" , 255); MinTrackHits = iConfig.getUntrackedParameter("MinTrackHits" , 4); + algoMode = iConfig.getUntrackedParameter ("AlgoMode" , "SingleJob"); HistoFile = iConfig.getUntrackedParameter ("HistoFile" , "out.root"); + VInputFiles = iConfig.getUntrackedParameter > ("InputFiles"); - VInputFiles = iConfig.getParameter > ("InputFiles"); - -std::cout << "TEST 1 " << endl; - - - useCalibration = iConfig.getUntrackedParameter("UseCalibration", false); + shapetest = iConfig.getParameter("ShapeTest"); + useCalibration = iConfig.getUntrackedParameter("UseCalibration"); m_calibrationPath = iConfig.getUntrackedParameter("calibrationPath"); - -std::cout << "TEST 2 " << endl; - } -DeDxDiscriminatorLearnerFromCalibTree::~DeDxDiscriminatorLearnerFromCalibTree(){ - -std::cout << "TEST Z " << endl; -} +DeDxDiscriminatorLearner::~DeDxDiscriminatorLearner(){} // ------------ method called once each job just before starting event loop ------------ -void DeDxDiscriminatorLearnerFromCalibTree::algoBeginJob(const edm::EventSetup& iSetup) +void DeDxDiscriminatorLearner::algoBeginJob(const edm::EventSetup& iSetup) { -std::cout << "TEST 3 " << endl; - -// Charge_Vs_Path = new TH2F ("Charge_Vs_Path" , "Charge_Vs_Path" , 24, 0.2, 1.4, 250, 0, 5000); Charge_Vs_Path = new TH3F ("Charge_Vs_Path" , "Charge_Vs_Path" , P_NBins, P_Min, P_Max, Path_NBins, Path_Min, Path_Max, Charge_NBins, Charge_Min, Charge_Max); -std::cout << "TEST A " << endl; + if(useCalibration && calibGains.size()==0){ + edm::ESHandle tkGeom; + iSetup.get().get( tkGeom ); + m_off = tkGeom->offsetDU(GeomDetEnumerators::PixelBarrel); //index start at the first pixel - edm::ESHandle tkGeom; - iSetup.get().get( tkGeom ); - m_tracker = tkGeom.product(); - - auto const & Det = tkGeom->dets(); - for(unsigned int i=0;igeographicalId(); - int SubDet = Detid.subdetId(); - - if( SubDet == StripSubdetector::TIB || SubDet == StripSubdetector::TID || - SubDet == StripSubdetector::TOB || SubDet == StripSubdetector::TEC ){ - - auto DetUnit = dynamic_cast (Det[i]); - if(!DetUnit)continue; - - const StripTopology& Topo = DetUnit->specificTopology(); - unsigned int NAPV = Topo.nstrips()/128; - - double Eta = DetUnit->position().basicVector().eta(); - double R = DetUnit->position().basicVector().transverse(); - double Thick = DetUnit->surface().bounds().thickness(); - for(unsigned int j=0;jDetId = Detid.rawId(); - APV->SubDet = SubDet; - APV->Eta = Eta; - APV->R = R; - APV->Thickness = Thick; - APV->APVId = j; - APVsColl[APV->DetId<<3 | APV->APVId] = APV; - } - } + DeDxTools::makeCalibrationMap(m_calibrationPath, *tkGeom, calibGains, m_off); } -std::cout << "TEST B " << endl; - - - MakeCalibrationMap(); -std::cout << "TEST C " << endl; - - - algoAnalyzeTheTree(); -std::cout << "TEST D " << endl; - + //Read the calibTree if in calibTree mode + if(strcmp(algoMode.c_str(),"CalibTree")==0)algoAnalyzeTheTree(iSetup); } // ------------ method called once each job just after ending the event loop ------------ - -void DeDxDiscriminatorLearnerFromCalibTree::algoEndJob() +void DeDxDiscriminatorLearner::algoEndJob() { + if( strcmp(algoMode.c_str(),"MultiJob")==0){ TFile* Output = new TFile(HistoFile.c_str(), "RECREATE"); Charge_Vs_Path->Write(); Output->Write(); Output->Close(); + }else if( strcmp(algoMode.c_str(),"WriteOnDB")==0){ TFile* Input = new TFile(HistoFile.c_str() ); Charge_Vs_Path = (TH3F*)(Input->FindObjectAny("Charge_Vs_Path"))->Clone(); Input->Close(); + }else if(strcmp(algoMode.c_str(),"CalibTree")==0){ + TFile* Output = new TFile(HistoFile.c_str(), "RECREATE"); + Charge_Vs_Path->Write(); + Output->Write(); + Output->Close(); + TFile* Input = new TFile(HistoFile.c_str() ); + Charge_Vs_Path = (TH3F*)(Input->FindObjectAny("Charge_Vs_Path"))->Clone(); + Input->Close(); + } } -void DeDxDiscriminatorLearnerFromCalibTree::algoAnalyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) -{ +void DeDxDiscriminatorLearner::algoAnalyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) +{ + Handle trajTrackAssociationHandle; + iEvent.getByToken(m_trajTrackAssociationTag, trajTrackAssociationHandle); + + edm::Handle trackCollectionHandle; + iEvent.getByToken(m_tracksTag,trackCollectionHandle); + + unsigned track_index = 0; + for(TrajTrackAssociationCollection::const_iterator it = trajTrackAssociationHandle->begin(); it!=trajTrackAssociationHandle->end(); ++it, track_index++) { + const Track& track = *it->val; + const Trajectory& traj = *it->key; + + if(track.eta() MaxTrackEta ){continue;} + if(track.pt() MaxTrackMomentum){continue;} + if(track.found() & measurements = traj.measurements(); + for(vector::const_iterator it = measurements.begin(); it!=measurements.end(); it++){ + TrajectoryStateOnSurface trajState=it->updatedState(); + if( !trajState.isValid()) continue; + + + const TrackingRecHit * recHit=(*it->recHit()).hit(); + if(!recHit || !recHit->isValid())continue; + LocalVector trackDirection = trajState.localDirection(); + float cosine = trackDirection.z()/trackDirection.mag(); + + processHit(recHit, trajState.localMomentum().mag(), cosine, trajState); + } + } + +} + + +void DeDxDiscriminatorLearner::processHit(const TrackingRecHit* recHit, float trackMomentum, float& cosine, const TrajectoryStateOnSurface& trajState){ + auto const & thit = static_cast(*recHit); + if(!thit.isValid())return; + + auto const & clus = thit.firstClusterRef(); + if(!clus.isValid())return; + + int NSaturating = 0; + if(clus.isPixel()){ + return; + }else if(clus.isStrip() && !thit.isMatched()){ + auto& detUnit = *(recHit->detUnit()); + auto& cluster = clus.stripCluster(); + if( cluster.amplitudes().size()>MaxNrStrips) { return; } + if( DeDxTools::IsSpanningOver2APV (cluster.firstStrip(), cluster.amplitudes().size())) { return; } + if(!DeDxTools::IsFarFromBorder (trajState, &detUnit )) { return; } + float pathLen = 10.0*detUnit.surface().bounds().thickness()/fabs(cosine); + float chargeAbs = DeDxTools::getCharge(&cluster,NSaturating, detUnit, calibGains, m_off); + float charge = chargeAbs/pathLen; + if(!shapetest || (shapetest && DeDxTools::shapeSelection(cluster.amplitudes()))){ + Charge_Vs_Path->Fill(trackMomentum, pathLen, charge); + } + }else if(clus.isStrip() && thit.isMatched()){ + const SiStripMatchedRecHit2D* matchedHit=dynamic_cast(recHit); + if(!matchedHit)return; + const GluedGeomDet* gdet = static_cast(matchedHit->det()); + + auto& detUnitM = *(gdet->monoDet()); + auto& clusterM = matchedHit->monoCluster(); + if( clusterM.amplitudes().size()>MaxNrStrips) { return; } + if( DeDxTools::IsSpanningOver2APV (clusterM.firstStrip(), clusterM.amplitudes().size())) { return; } + if(!DeDxTools::IsFarFromBorder (trajState, &detUnitM )) { return; } + float pathLen = 10.0*detUnitM.surface().bounds().thickness()/fabs(cosine); + float chargeAbs = DeDxTools::getCharge(&clusterM,NSaturating, detUnitM, calibGains, m_off); + float charge = chargeAbs/pathLen; + if(!shapetest || (shapetest && DeDxTools::shapeSelection(clusterM.amplitudes()))){ + Charge_Vs_Path->Fill(trackMomentum, pathLen, charge); + } + + auto& detUnitS = *(gdet->stereoDet()); + auto& clusterS = matchedHit->stereoCluster(); + if( clusterS.amplitudes().size()>MaxNrStrips) { return; } + if( DeDxTools::IsSpanningOver2APV (clusterS.firstStrip(), clusterS.amplitudes().size())) { return; } + if(!DeDxTools::IsFarFromBorder (trajState, &detUnitS )) { return; } + pathLen = 10.0*detUnitS.surface().bounds().thickness()/fabs(cosine); + chargeAbs = DeDxTools::getCharge(&clusterS,NSaturating, detUnitS, calibGains, m_off); + charge = chargeAbs/pathLen; + if(!shapetest || (shapetest && DeDxTools::shapeSelection(clusterS.amplitudes()))){ + Charge_Vs_Path->Fill(trackMomentum, pathLen, charge); + } + } } -void DeDxDiscriminatorLearnerFromCalibTree::algoAnalyzeTheTree() +//this function is only used when we run over a calibTree instead of running over EDM files +void DeDxDiscriminatorLearner::algoAnalyzeTheTree(const edm::EventSetup& iSetup) { + edm::ESHandle tkGeom; + iSetup.get().get( tkGeom ); + unsigned int NEvent = 0; for(unsigned int i=0;i %s\n",i+1, (int)VInputFiles.size(), (char*)(VInputFiles[i].c_str())); fflush(stdout); @@ -205,11 +255,12 @@ void DeDxDiscriminatorLearnerFromCalibTree::algoAnalyzeTheTree() int Charge = 0; if(useCalibration){ - stAPVInfo* APV = APVsColl[((*rawid)[c]<<3) | (unsigned int)((*firststrip)[c]/128)]; + auto & gains = calibGains[tkGeom->idToDetUnit(DetId((*rawid)[c]))->index()-m_off]; + auto & gain = gains[(*firststrip)[c]/128]; for(unsigned int s=0;s<(*nstrips)[c];s++){ int StripCharge = (*amplitude)[FirstAmplitude-(*nstrips)[c]+s]; if(StripCharge<254){ - StripCharge=(int)(StripCharge/APV->CalibGain); + StripCharge=(int)(StripCharge/gain); if(StripCharge>=1024){ StripCharge = 255; }else if(StripCharge>=254){ @@ -231,22 +282,14 @@ void DeDxDiscriminatorLearnerFromCalibTree::algoAnalyzeTheTree() } -PhysicsTools::Calibration::HistogramD3D* DeDxDiscriminatorLearnerFromCalibTree::getNewObject() +PhysicsTools::Calibration::HistogramD3D* DeDxDiscriminatorLearner::getNewObject() { -std::cout << "TEST X " << endl; - - -// if( strcmp(algoMode.c_str(),"MultiJob")==0)return NULL; - PhysicsTools::Calibration::HistogramD3D* obj; obj = new PhysicsTools::Calibration::HistogramD3D( Charge_Vs_Path->GetNbinsX(), Charge_Vs_Path->GetXaxis()->GetXmin(), Charge_Vs_Path->GetXaxis()->GetXmax(), Charge_Vs_Path->GetNbinsY(), Charge_Vs_Path->GetYaxis()->GetXmin(), Charge_Vs_Path->GetYaxis()->GetXmax(), Charge_Vs_Path->GetNbinsZ(), Charge_Vs_Path->GetZaxis()->GetXmin(), Charge_Vs_Path->GetZaxis()->GetXmax()); -std::cout << "TEST Y " << endl; - - for(int ix=0; ix<=Charge_Vs_Path->GetNbinsX()+1; ix++){ for(int iy=0; iy<=Charge_Vs_Path->GetNbinsY()+1; iy++){ for(int iz=0; iz<=Charge_Vs_Path->GetNbinsZ()+1; iz++){ @@ -256,36 +299,9 @@ std::cout << "TEST Y " << endl; } } -std::cout << "TEST W " << endl; - return obj; } - -void DeDxDiscriminatorLearnerFromCalibTree::MakeCalibrationMap(){ - if(!useCalibration)return; - - - TChain* t1 = new TChain("SiStripCalib/APVGain"); - t1->Add(m_calibrationPath.c_str()); - - unsigned int tree_DetId; - unsigned char tree_APVId; - double tree_Gain; - - t1->SetBranchAddress("DetId" ,&tree_DetId ); - t1->SetBranchAddress("APVId" ,&tree_APVId ); - t1->SetBranchAddress("Gain" ,&tree_Gain ); - - for (unsigned int ientry = 0; ientry < t1->GetEntries(); ientry++) { - t1->GetEntry(ientry); - stAPVInfo* APV = APVsColl[(tree_DetId<<3) | (unsigned int)tree_APVId]; - APV->CalibGain = tree_Gain; - } - -} - - //define this as a plug-in -DEFINE_FWK_MODULE(DeDxDiscriminatorLearnerFromCalibTree); +DEFINE_FWK_MODULE(DeDxDiscriminatorLearner); diff --git a/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearner.h b/CalibTracker/SiStripChannelGain/plugins/DeDxDiscriminatorLearner.h similarity index 53% rename from RecoTracker/DeDx/plugins/DeDxDiscriminatorLearner.h rename to CalibTracker/SiStripChannelGain/plugins/DeDxDiscriminatorLearner.h index a774f62f8e600..915d5f4897d8b 100644 --- a/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearner.h +++ b/CalibTracker/SiStripChannelGain/plugins/DeDxDiscriminatorLearner.h @@ -12,22 +12,12 @@ #include "TrackingTools/PatternTools/interface/Trajectory.h" #include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h" +#include "Geometry/TrackerGeometryBuilder/interface/GluedGeomDet.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit1D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2D.h" - -#include "RecoTracker/DeDx/interface/DeDxDiscriminatorTools.h" +#include "RecoTracker/DeDx/interface/DeDxTools.h" #include "TFile.h" #include "TH3F.h" -#include - -//using namespace edm; -//using namespace reco; -//using namespace std; -//using namespace __gnu_cxx; - class DeDxDiscriminatorLearner : public ConditionDBWriter { @@ -41,56 +31,47 @@ class DeDxDiscriminatorLearner : public ConditionDBWriter m_trajTrackAssociationTag; edm::EDGetTokenT m_tracksTag; - bool usePixel; - bool useStrip; - double MeVperADCPixel; - double MeVperADCStrip; - - const TrackerGeometry* m_tracker; - - double MinTrackMomentum; - double MaxTrackMomentum; - double MinTrackEta; - double MaxTrackEta; + float MinTrackMomentum; + float MaxTrackMomentum; + float MinTrackEta; + float MaxTrackEta; unsigned int MaxNrStrips; unsigned int MinTrackHits; - double MaxTrackChiOverNdf; - - - double P_Min; - double P_Max; - int P_NBins; - double Path_Min; - double Path_Max; - int Path_NBins; - double Charge_Min; - double Charge_Max; - int Charge_NBins; - - + float MaxTrackChiOverNdf; + + float P_Min; + float P_Max; + int P_NBins; + float Path_Min; + float Path_Max; + int Path_NBins; + float Charge_Min; + float Charge_Max; + int Charge_NBins; + + std::vector VInputFiles; std::string algoMode; std::string HistoFile; TH3F* Charge_Vs_Path; -private : - struct stModInfo{int DetId; int SubDet; float Eta; float R; float Thickness; int NAPV; }; - class isEqual{ - public: - template bool operator () (const T& PseudoDetId1, const T& PseudoDetId2) { return PseudoDetId1==PseudoDetId2; } - }; + std::string m_calibrationPath; + bool useCalibration; + bool shapetest; + + std::vector< std::vector > calibGains; + unsigned int m_off; - __gnu_cxx::hash_map, isEqual > MODsColl; }; #endif diff --git a/Calibration/TkAlCaRecoProducers/python/ALCARECOSiStripCalMinBiasHI_cff.py b/Calibration/TkAlCaRecoProducers/python/ALCARECOSiStripCalMinBiasHI_cff.py index e7e0938b27c76..aee0eba876a34 100644 --- a/Calibration/TkAlCaRecoProducers/python/ALCARECOSiStripCalMinBiasHI_cff.py +++ b/Calibration/TkAlCaRecoProducers/python/ALCARECOSiStripCalMinBiasHI_cff.py @@ -28,7 +28,7 @@ ALCARECOSiStripCalMinBias = Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi.AlignmentTrackSelector.clone() ALCARECOSiStripCalMinBias.filter = True ##do not store empty events -ALCARECOSiStripCalMinBias.src = 'hiSelectedTracks' +ALCARECOSiStripCalMinBias.src = 'hiGeneralTracks' ALCARECOSiStripCalMinBias.applyBasicCuts = True ALCARECOSiStripCalMinBias.ptMin = 0.8 ##GeV ALCARECOSiStripCalMinBias.nHitMin = 6 ## at least 6 hits required diff --git a/CondCore/CondDB/src/IOVProxy.cc b/CondCore/CondDB/src/IOVProxy.cc index 4fdc9c945b66e..cacc47894f036 100644 --- a/CondCore/CondDB/src/IOVProxy.cc +++ b/CondCore/CondDB/src/IOVProxy.cc @@ -22,9 +22,8 @@ namespace cond { cond::Time_t endOfValidity; cond::Time_t lastValidatedTime; // iov data - cond::Time_t lowerGroup = cond::time::MAX_VAL; - cond::Time_t higherGroup = cond::time::MIN_VAL; - cond::Time_t groupEdge = cond::time::MIN_VAL; + cond::Time_t groupLowerIov = cond::time::MAX_VAL; + cond::Time_t groupHigherIov = cond::time::MIN_VAL; std::vector sinceGroups; IOVProxy::IOVContainer iovSequence; size_t numberOfQueries = 0; @@ -139,8 +138,8 @@ namespace cond { // load the full iov sequence in this case! m_session->iovSchema().iovTable().selectLatest( m_data->tag, m_data->iovSequence ); - m_data->lowerGroup = cond::time::MIN_VAL; - m_data->higherGroup = cond::time::MAX_VAL; + m_data->groupLowerIov = cond::time::MIN_VAL; + m_data->groupHigherIov = cond::time::MAX_VAL; } else { m_session->iovSchema().iovTable().selectGroups( m_data->tag, m_data->sinceGroups ); } @@ -152,8 +151,8 @@ namespace cond { void IOVProxy::reset(){ if( m_data.get() ){ - m_data->lowerGroup = cond::time::MAX_VAL; - m_data->higherGroup = cond::time::MIN_VAL; + m_data->groupLowerIov = cond::time::MAX_VAL; + m_data->groupHigherIov = cond::time::MIN_VAL; m_data->sinceGroups.clear(); m_data->iovSequence.clear(); m_data->numberOfQueries = 0; @@ -207,10 +206,21 @@ namespace cond { m_data->iovSequence.clear(); m_session->iovSchema().iovTable().selectLatestByGroup( m_data->tag, lowerGroup, higherGroup, m_data->iovSequence ); - m_data->lowerGroup = lowerGroup; - m_data->higherGroup = higherGroup; - m_data->groupEdge = higherGroup; - if( higherGroup < cond::time::MAX_VAL && !m_data->iovSequence.empty() ) m_data->groupEdge = std::get<0>(m_data->iovSequence.back()); + if( m_data->iovSequence.empty() ){ + m_data->groupLowerIov = cond::time::MAX_VAL; + m_data->groupHigherIov = cond::time::MIN_VAL; + } else { + if( lowerGroup > cond::time::MIN_VAL ) { + m_data->groupLowerIov = std::get<0>( m_data->iovSequence.front() ); + } else { + m_data->groupLowerIov = cond::time::MIN_VAL; + } + if( higherGroup < cond::time::MAX_VAL ) { + m_data->groupHigherIov = std::get<0>(m_data->iovSequence.back()); + } else { + m_data->groupHigherIov = cond::time::MAX_VAL; + } + } m_data->numberOfQueries++; } @@ -250,9 +260,10 @@ namespace cond { // first check the available iov cache: // case 0 empty cache ( the first request ) - if( m_data->lowerGroup==cond::time::MAX_VAL || + /** Pageing switched off temporarily + if( m_data->groupLowerIov == cond::time::MAX_VAL || // case 1 : target outside - time < m_data->lowerGroup || time>= m_data->groupEdge ){ + time < m_data->groupLowerIov || time >= m_data->groupHigherIov ){ // a new query required! // first determine the groups @@ -278,6 +289,11 @@ namespace cond { // finally, get the iovs for the selected group interval!! fetchSequence( lowG, highG ); } + **/ + // only one page... + if( m_data->groupLowerIov == cond::time::MAX_VAL ){ + fetchSequence( cond::time::MIN_VAL, cond::time::MAX_VAL ); + } // the current iov set is a good one... auto iIov = search( time, m_data->iovSequence ); @@ -317,7 +333,7 @@ namespace cond { } std::pair IOVProxy::loadedGroup() const { - return m_data.get()? std::make_pair( m_data->lowerGroup, m_data->higherGroup ): std::make_pair( cond::time::MAX_VAL, cond::time::MIN_VAL ); + return m_data.get()? std::make_pair( m_data->groupLowerIov, m_data->groupHigherIov ): std::make_pair( cond::time::MAX_VAL, cond::time::MIN_VAL ); } const std::shared_ptr& IOVProxy::session() const { diff --git a/CondFormats/HIObjects/src/T_EventSetup_CentralityCuts.cc b/CondFormats/HIObjects/src/T_EventSetup_CentralityCuts.cc index 6ec03c6177c61..1fa67d886fb83 100644 --- a/CondFormats/HIObjects/src/T_EventSetup_CentralityCuts.cc +++ b/CondFormats/HIObjects/src/T_EventSetup_CentralityCuts.cc @@ -1,5 +1,6 @@ #include "CondFormats/HIObjects/interface/CentralityTable.h" #include "CondFormats/HIObjects/interface/RPFlatParams.h" + #include "FWCore/Utilities/interface/typelookup.h" TYPELOOKUP_DATA_REG(CentralityTable); diff --git a/CondFormats/HIObjects/src/classes.h b/CondFormats/HIObjects/src/classes.h index 3ca6e441cab84..b6aee43bebffc 100644 --- a/CondFormats/HIObjects/src/classes.h +++ b/CondFormats/HIObjects/src/classes.h @@ -1,6 +1,5 @@ #include "CondFormats/HIObjects/src/headers.h" - namespace CondFormats_HIObjects { struct dictionary{ std::vector dummy; diff --git a/Configuration/Skimming/python/PDWG_EXOHSCP_cff.py b/Configuration/Skimming/python/PDWG_EXOHSCP_cff.py index 0633b68a4ce1d..3c90e17699fda 100644 --- a/Configuration/Skimming/python/PDWG_EXOHSCP_cff.py +++ b/Configuration/Skimming/python/PDWG_EXOHSCP_cff.py @@ -23,26 +23,11 @@ TrackRefitterSkim.src = "generalTracksSkim" -dedxSkimNPHarm2 = cms.EDProducer("DeDxEstimatorProducer", - tracks = cms.InputTag("TrackRefitterSkim"), - trajectoryTrackAssociation = cms.InputTag("TrackRefitterSkim"), - - estimator = cms.string('generic'), - exponent = cms.double(-2.0), - - UseStrip = cms.bool(True), - UsePixel = cms.bool(False), - MeVperADCStrip = cms.double(3.61e-06*265), - MeVperADCPixel = cms.double(3.61e-06), - - MisCalib_Mean = cms.untracked.double(1.0), - MisCalib_Sigma = cms.untracked.double(0.00), - - UseCalibration = cms.bool(False), - calibrationPath = cms.string(""), - ShapeTest = cms.bool(True), -) - +from RecoTracker.DeDx.dedxEstimators_cff import dedxHarmonic2 +dedxSkimNPHarm2 = dedxHarmonic2.clone() +dedxSkimNPHarm2.tracks = cms.InputTag("TrackRefitterSkim") +dedxSkimNPHarm2.trajectoryTrackAssociation = cms.InputTag("TrackRefitterSkim") +dedxSkimNPHarm2.UsePixel = cms.bool(False) DedxFilter = cms.EDFilter("HSCPFilter", inputMuonCollection = cms.InputTag("muons"), diff --git a/Configuration/StandardSequences/python/ReconstructionHeavyIons_cff.py b/Configuration/StandardSequences/python/ReconstructionHeavyIons_cff.py index d86bc44055ba3..865281b2b5c1d 100644 --- a/Configuration/StandardSequences/python/ReconstructionHeavyIons_cff.py +++ b/Configuration/StandardSequences/python/ReconstructionHeavyIons_cff.py @@ -54,12 +54,5 @@ reconstructionHeavyIons_HcalNZS = cms.Sequence(localReco_HcalNZS*globalRecoPbPb) -reconstructionHeavyIons_withPF = cms.Sequence(reconstructionHeavyIons) -reconstructionHeavyIons_HcalNZS_withPF = cms.Sequence(reconstructionHeavyIons_HcalNZS) - -reconstructionHeavyIons_withPF *= hiElectronSequence*HiParticleFlowReco -reconstructionHeavyIons_HcalNZS_withPF *= hiElectronSequence*HiParticleFlowReco - - -reconstructionHeavyIons_withRegitMu = cms.Sequence(reconstructionHeavyIons*reMuonRecoPbPb) +reconstructionHeavyIons_withRegitMu = cms.Sequence(reconstructionHeavyIons*regionalMuonRecoPbPb) #-------------------------------------------------------------------------- diff --git a/DPGAnalysis/Skims/python/dcsonly_json_2012.py b/DPGAnalysis/Skims/python/dcsonly_json_2012.py index 6659bd6863040..acf2b32db9532 100644 --- a/DPGAnalysis/Skims/python/dcsonly_json_2012.py +++ b/DPGAnalysis/Skims/python/dcsonly_json_2012.py @@ -30,3 +30,5 @@ def findFileInPath(theFile): LuminositySectionsBlockRange = LumiList(findFileInPath("DPGAnalysis/Skims/data/json_DCSONLY.txt")).getVLuminosityBlockRange() ) + +dcsonly_json_2012 = cms.Sequence( dcsonly_json_2012_pickEvents ) diff --git a/DPGAnalysis/Skims/python/golden_json_2012.py b/DPGAnalysis/Skims/python/golden_json_2012.py index e0493adc70c72..15f81a7dde6b9 100644 --- a/DPGAnalysis/Skims/python/golden_json_2012.py +++ b/DPGAnalysis/Skims/python/golden_json_2012.py @@ -31,3 +31,5 @@ def findFileInPath(theFile): LuminositySectionsBlockRange = LumiList(findFileInPath("DPGAnalysis/Skims/data/Cert_190456-208686_8TeV_22Jan2013ReReco_Collisions12_JSON.txt")).getVLuminosityBlockRange() ) + +golden_json_2012 = cms.Sequence( golden_json_2012_pickEvents ) diff --git a/DPGAnalysis/Skims/python/muon_json_2012.py b/DPGAnalysis/Skims/python/muon_json_2012.py index acc043ea960d6..07c07cefa2a68 100644 --- a/DPGAnalysis/Skims/python/muon_json_2012.py +++ b/DPGAnalysis/Skims/python/muon_json_2012.py @@ -32,3 +32,5 @@ def findFileInPath(theFile): ) + +muon_json_2012 = cms.Sequence( muon_json_2012_pickEvents ) diff --git a/DQM/BeamMonitor/python/AlcaBeamMonitorHeavyIons_cff.py b/DQM/BeamMonitor/python/AlcaBeamMonitorHeavyIons_cff.py index 36447fb729b49..bb5a9f8ee19ff 100644 --- a/DQM/BeamMonitor/python/AlcaBeamMonitorHeavyIons_cff.py +++ b/DQM/BeamMonitor/python/AlcaBeamMonitorHeavyIons_cff.py @@ -3,8 +3,8 @@ from DQM.BeamMonitor.AlcaBeamMonitor_cfi import * AlcaBeamMonitor.PrimaryVertexLabel = 'hiSelectedVertex' -AlcaBeamMonitor.TrackLabel = 'hiSelectedTracks' -AlcaBeamMonitor.BeamFitter.TrackCollection = 'hiSelectedTracks' +AlcaBeamMonitor.TrackLabel = 'hiGeneralTracks' +AlcaBeamMonitor.BeamFitter.TrackCollection = 'hiGeneralTracks' AlcaBeamMonitor.BeamFitter.TrackQuality = ['highPurity'] AlcaBeamMonitor.PVFitter.VertexCollection = 'hiSelectedVertex' diff --git a/DQM/BeamMonitor/test/HeavyIonTest_cfg.py b/DQM/BeamMonitor/test/HeavyIonTest_cfg.py index 61d9c274ff5d9..eeebbea9c247c 100644 --- a/DQM/BeamMonitor/test/HeavyIonTest_cfg.py +++ b/DQM/BeamMonitor/test/HeavyIonTest_cfg.py @@ -127,8 +127,7 @@ process.firstStep) # Needed, as the event content is different! -process.dqmBeamMonitor.BeamFitter.TrackCollection = \ - cms.untracked.InputTag('hiSelectedTracks') +process.dqmBeamMonitor.BeamFitter.TrackCollection = cms.untracked.InputTag('hiGeneralTracks') process.pp = cms.Path( process.dqmTKStatus* diff --git a/DQM/SiStripMonitorClient/python/SiStripSourceConfigP5_cff.py b/DQM/SiStripMonitorClient/python/SiStripSourceConfigP5_cff.py index 0e0d580c4f7ab..410eea2a41775 100644 --- a/DQM/SiStripMonitorClient/python/SiStripSourceConfigP5_cff.py +++ b/DQM/SiStripMonitorClient/python/SiStripSourceConfigP5_cff.py @@ -85,7 +85,7 @@ # Clone for Heavy Ion Tracks (for HI Collisions) import DQM.SiStripMonitorTrack.SiStripMonitorTrack_cfi SiStripMonitorTrack_hi = DQM.SiStripMonitorTrack.SiStripMonitorTrack_cfi.SiStripMonitorTrack.clone() -SiStripMonitorTrack_hi.TrackProducer = 'hiGlobalPrimTracks' +SiStripMonitorTrack_hi.TrackProducer = 'hiGeneralTracks' SiStripMonitorTrack_hi.Mod_On = True # TrackerMonitorTrack #### @@ -124,8 +124,8 @@ # Clone for Heavy Ion Tracks (for HI Collisions) #import DQM.TrackerMonitorTrack.MonitorTrackResiduals_cfi #MonitorTrackResiduals_hi = DQM.TrackerMonitorTrack.MonitorTrackResiduals_cfi.MonitorTrackResiduals.clone() -#MonitorTrackResiduals_hi.Tracks = 'hiGlobalPrimTracks' -#MonitorTrackResiduals_hi.trajectoryInput = 'hiGlobalPrimTracks' +#MonitorTrackResiduals_hi.Tracks = 'hiGeneralTracks' +#MonitorTrackResiduals_hi.trajectoryInput = 'hiGeneralTracks' #MonitorTrackResiduals_hi.OutputMEsInRootFile = False #MonitorTrackResiduals_hi.Mod_On = False @@ -200,7 +200,7 @@ # Clone for Heavy Ion Tracks (for HI Collisions) import DQM.TrackingMonitor.TrackEfficiencyMonitor_cfi TrackEffMon_hi = DQM.TrackingMonitor.TrackEfficiencyMonitor_cfi.TrackEffMon.clone() -TrackEffMon_hi.TKTrackCollection = 'hiGlobalPrimTracks' +TrackEffMon_hi.TKTrackCollection = 'hiGeneralTracks' TrackEffMon_hi.AlgoName = 'HeavyIonTk' TrackEffMon_hi.FolderName = 'Tracking/TrackParameters/TrackEfficiency' diff --git a/DQM/SiStripMonitorClient/python/SiStripSourceConfigTier0_HeavyIons_cff.py b/DQM/SiStripMonitorClient/python/SiStripSourceConfigTier0_HeavyIons_cff.py index c4c53e10343ac..2e95ad3dadb49 100644 --- a/DQM/SiStripMonitorClient/python/SiStripSourceConfigTier0_HeavyIons_cff.py +++ b/DQM/SiStripMonitorClient/python/SiStripSourceConfigTier0_HeavyIons_cff.py @@ -6,31 +6,19 @@ # SiStripMonitorTrack #### import DQM.SiStripMonitorTrack.SiStripMonitorTrack_cfi SiStripMonitorTrack_hi = DQM.SiStripMonitorTrack.SiStripMonitorTrack_cfi.SiStripMonitorTrack.clone() -SiStripMonitorTrack_hi.TrackProducer = "hiGlobalPrimTracks" +SiStripMonitorTrack_hi.TrackProducer = "hiGeneralTracks" SiStripMonitorTrack_hi.Mod_On = False # TrackerMonitorTrack #### import DQM.TrackerMonitorTrack.MonitorTrackResiduals_cfi MonitorTrackResiduals_hi = DQM.TrackerMonitorTrack.MonitorTrackResiduals_cfi.MonitorTrackResiduals.clone() -MonitorTrackResiduals_hi.Tracks = 'hiGlobalPrimTracks' -MonitorTrackResiduals_hi.trajectoryInput = "hiGlobalPrimTracks" +MonitorTrackResiduals_hi.Tracks = 'hiGeneralTracks' +MonitorTrackResiduals_hi.trajectoryInput = "hiGeneralTracks" MonitorTrackResiduals_hi.OutputMEsInRootFile = False MonitorTrackResiduals_hi.Mod_On = False -# TrackingMonitor #### -import DQM.TrackingMonitor.TrackerHeavyIonTrackingMonitor_cfi -TrackMon_hi = DQM.TrackingMonitor.TrackerHeavyIonTrackingMonitor_cfi.TrackerHeavyIonTrackMon.clone() -TrackMon_hi.FolderName = 'Tracking/TrackParameters' -TrackMon_hi.BSFolderName = 'Tracking/TrackParameters/BeamSpotParameters' - -#removed all modules using TkDetMap service -#SiStripDQMTier0_hi = cms.Sequence(APVPhases * consecutiveHEs * -# siStripFEDCheck * -# MonitorTrackResiduals_hi * -# TrackMon_hi) SiStripDQMTier0_hi = cms.Sequence(APVPhases * consecutiveHEs * siStripFEDCheck * siStripFEDMonitor * SiStripMonitorDigi * SiStripMonitorCluster * SiStripMonitorTrack_hi * - MonitorTrackResiduals_hi * - TrackMon_hi) + MonitorTrackResiduals_hi) diff --git a/DQM/SiStripMonitorDigi/interface/SiStripBaselineValidator.h b/DQM/SiStripMonitorDigi/interface/SiStripBaselineValidator.h index e71908885f7a7..264a2cba354ca 100644 --- a/DQM/SiStripMonitorDigi/interface/SiStripBaselineValidator.h +++ b/DQM/SiStripMonitorDigi/interface/SiStripBaselineValidator.h @@ -23,14 +23,6 @@ #include #include -/*#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackCandidate/interface/TrackCandidateCollection.h" -#include "DataFormats/TrackCandidate/interface/TrackCandidate.h" -#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackReco/interface/TrackFwd.h" -#include "DataFormats/VertexReco/interface/VertexFwd.h" -#include "DataFormats/VertexReco/interface/Vertex.h" -*/ #include @@ -57,7 +49,6 @@ class SiStripBaselineValidator : public DQMEDAnalyzer edm::InputTag srcProcessedRawDigi_; edm::EDGetTokenT > moduleRawDigiToken_; - // edm::InputTag hiSelectedTracks; std::string outputFile_; bool createOutputFile_; diff --git a/DQM/SiStripMonitorDigi/src/SiStripBaselineValidator.cc b/DQM/SiStripMonitorDigi/src/SiStripBaselineValidator.cc index a7a2e7fa40ab4..c8bd7c9c8d9d3 100644 --- a/DQM/SiStripMonitorDigi/src/SiStripBaselineValidator.cc +++ b/DQM/SiStripMonitorDigi/src/SiStripBaselineValidator.cc @@ -19,14 +19,6 @@ #include "DataFormats/Common/interface/DetSet.h" #include "DQMServices/Core/interface/DQMStore.h" -/*#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackCandidate/interface/TrackCandidateCollection.h" -#include "DataFormats/TrackCandidate/interface/TrackCandidate.h" -#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackReco/interface/TrackFwd.h" -#include "DataFormats/VertexReco/interface/VertexFwd.h" -#include "DataFormats/VertexReco/interface/Vertex.h" -*/ //ROOT inclusion #include "TH1F.h" @@ -45,7 +37,6 @@ using namespace std; SiStripBaselineValidator::SiStripBaselineValidator(const edm::ParameterSet& conf){ srcProcessedRawDigi_ = conf.getParameter( "srcProcessedRawDigi" ); - // hiSelectedTracks = conf.getParameter( "hiSelectedTracks" ); createOutputFile_ = conf.getUntrackedParameter("saveFile",false); outputFile_ = conf.getParameter("outputFile"); dbe = &*edm::Service(); diff --git a/DQM/TrackingMonitor/interface/TrackAnalyzer.h b/DQM/TrackingMonitor/interface/TrackAnalyzer.h index 14c0bfcc5046d..cbddb01721eb6 100644 --- a/DQM/TrackingMonitor/interface/TrackAnalyzer.h +++ b/DQM/TrackingMonitor/interface/TrackAnalyzer.h @@ -92,6 +92,9 @@ class TrackAnalyzer // ADD by Mia in order to turnON test MEs bool doTestPlots_; + //For HI Plots + bool doHIPlots_; + struct TkParameterMEs { TkParameterMEs() : TrackP(NULL) @@ -254,6 +257,10 @@ class TrackAnalyzer // add by Mia in order to deal w/ LS transitions MonitorElement* Chi2oNDF_lumiFlag; MonitorElement* NumberOfRecHitsPerTrack_lumiFlag; + + //new plots for Heavy Ion DQM + MonitorElement* LongDCASig; + MonitorElement* TransDCASig; struct TkRecHitsPerSubDetMEs { diff --git a/DQM/TrackingMonitor/python/TrackerHeavyIonTrackingMonitor_cfi.py b/DQM/TrackingMonitor/python/TrackerHeavyIonTrackingMonitor_cfi.py index 1c39faccdcab6..00291330415c7 100644 --- a/DQM/TrackingMonitor/python/TrackerHeavyIonTrackingMonitor_cfi.py +++ b/DQM/TrackingMonitor/python/TrackerHeavyIonTrackingMonitor_cfi.py @@ -5,10 +5,15 @@ # Update specific parameters -TrackerHeavyIonTrackMon.TrackProducer = cms.InputTag("hiGlobalPrimTracks") +TrackerHeavyIonTrackMon.TrackProducer = cms.InputTag("hiGeneralTracks") TrackerHeavyIonTrackMon.SeedProducer = cms.InputTag("hiPixelTrackSeeds") TrackerHeavyIonTrackMon.TCProducer = cms.InputTag("hiPrimTrackCandidates") TrackerHeavyIonTrackMon.beamSpot = cms.InputTag("offlineBeamSpot") +TrackerHeavyIonTrackMon.primaryVertex = cms.InputTag('hiSelectedVertex') + + +TrackerHeavyIonTrackMon.doHIPlots = cms.bool(True) + TrackerHeavyIonTrackMon.AlgoName = cms.string('HeavyIonTk') TrackerHeavyIonTrackMon.Quality = cms.string('') diff --git a/DQM/TrackingMonitor/python/TrackingMonitor_cfi.py b/DQM/TrackingMonitor/python/TrackingMonitor_cfi.py index df3dfbdd8474f..1f23a6dbe8802 100644 --- a/DQM/TrackingMonitor/python/TrackingMonitor_cfi.py +++ b/DQM/TrackingMonitor/python/TrackingMonitor_cfi.py @@ -73,7 +73,7 @@ doPUmonitoring = cms.bool(False), doPlotsVsBXlumi = cms.bool(False), doPlotsVsGoodPVtx = cms.bool(False), - + doHIPlots = cms.bool(False), #which seed plots to do doSeedNumberHisto = cms.bool(False), @@ -369,5 +369,14 @@ # BXlumiBin = cms.int32(400), # BXlumiMin = cms.double(2000), # BXlumiMax = cms.double(6000), - + ############################### +################## FOR HI PLOTS##################### +####### +TransDCABins = cms.int32(100), +TransDCAMin = cms.double(-8.0), +TransDCAMax = cms.double(8.0), + +LongDCABins = cms.int32(100), +LongDCAMin = cms.double(-8.0), +LongDCAMax = cms.double(8.0), ) diff --git a/DQM/TrackingMonitor/python/dEdxAnalyzer_cff.py b/DQM/TrackingMonitor/python/dEdxAnalyzer_cff.py index 0d2571a8be3c8..34e8f8213efb8 100644 --- a/DQM/TrackingMonitor/python/dEdxAnalyzer_cff.py +++ b/DQM/TrackingMonitor/python/dEdxAnalyzer_cff.py @@ -8,7 +8,7 @@ RefitterForDedxDQMDeDx.src = cms.InputTag("generalTracks") RefitterForDedxDQMDeDx.TrajectoryInEvent = True -from RecoTracker.DeDx.dedxHarmonic2_cfi import * +from RecoTracker.DeDx.dedxEstimators_cff import dedxHarmonic2 dedxDQMHarm2SP = dedxHarmonic2.clone() #dedxDQMHarm2SP.tracks = cms.InputTag("RefitterForDedxDQMDeDx") #dedxDQMHarm2SP.trajectoryTrackAssociation = cms.InputTag("RefitterForDedxDQMDeDx") diff --git a/DQM/TrackingMonitor/src/TrackAnalyzer.cc b/DQM/TrackingMonitor/src/TrackAnalyzer.cc index 985b885962286..f2b0d7e32723c 100644 --- a/DQM/TrackingMonitor/src/TrackAnalyzer.cc +++ b/DQM/TrackingMonitor/src/TrackAnalyzer.cc @@ -37,6 +37,7 @@ TrackAnalyzer::TrackAnalyzer(const edm::ParameterSet& iConfig) , doDCAwrt000Plots_ ( conf_.getParameter("doDCAwrt000Plots") ) , doLumiAnalysis_ ( conf_.getParameter("doLumiAnalysis") ) , doTestPlots_ ( conf_.getParameter("doTestPlots") ) + , doHIPlots_ ( conf_.getParameter("doHIPlots") ) { initHistos(); TopFolder_ = conf_.getParameter("FolderName"); @@ -105,6 +106,14 @@ void TrackAnalyzer::initHistos() Chi2oNDF_lumiFlag = NULL; NumberOfRecHitsPerTrack_lumiFlag = NULL; + //////////////////////////////////////////////////////////// + //special Plots for HI DQM //SHOULD I ADD THE BOOL HERE?? + //////////////////////////////////////////////////////////// + LongDCASig = NULL; + TransDCASig = NULL; + + + } TrackAnalyzer::~TrackAnalyzer() @@ -258,6 +267,17 @@ void TrackAnalyzer::bookHistosForHitProperties(DQMStore::IBooker & ibooker) { double Chi2ProbMax = conf_.getParameter("Chi2ProbMax"); + //HI PLOTS//// + int TransDCABins = conf_.getParameter("TransDCABins"); + double TransDCAMin = conf_.getParameter("TransDCAMin"); + double TransDCAMax = conf_.getParameter("TransDCAMax"); + + int LongDCABins = conf_.getParameter("LongDCABins"); + double LongDCAMin = conf_.getParameter("LongDCAMin"); + double LongDCAMax = conf_.getParameter("LongDCAMax"); + /////////////////////////////////////////////////////////////////// + + ibooker.setCurrentFolder(TopFolder_+"/GeneralProperties"); histname = "Chi2_"; @@ -274,6 +294,23 @@ void TrackAnalyzer::bookHistosForHitProperties(DQMStore::IBooker & ibooker) { Chi2oNDF = ibooker.book1D(histname+CategoryName, histname+CategoryName, Chi2NDFBin, Chi2NDFMin, Chi2NDFMax); Chi2oNDF->setAxisTitle("Track #chi^{2}/ndf",1); Chi2oNDF->setAxisTitle("Number of Tracks" ,2); + + + ////////////// + //HI PLOTS/// + ////////////// + if (doHIPlots_) + { + histname = "LongDCASig_"; + LongDCASig = ibooker.book1D(histname+CategoryName, histname+CategoryName,LongDCABins,LongDCAMin,LongDCAMax); + LongDCASig->setAxisTitle("dz/#sigma_{dz}",1); + + histname = "TransDCASig_"; + TransDCASig = ibooker.book1D(histname+CategoryName,histname+CategoryName,TransDCABins,TransDCAMin,TransDCAMax); + TransDCASig->setAxisTitle("dxy/#sigma_{dxy}",1); + } + + if (doDCAPlots_) { histname = "xPointOfClosestApproach_"; @@ -647,6 +684,18 @@ void TrackAnalyzer::analyze(const edm::Event& iEvent, const edm::EventSetup& iSe if (recoPrimaryVerticesHandle->size() > 0) { reco::Vertex pv = recoPrimaryVerticesHandle->at(0); + + ////////////////// + //HI PLOTS/////// + //////////////// + if(doHIPlots_) + { + LongDCASig->Fill(track.dz(pv.position())/(track.dzError()*track.dzError()+pv.zError()*pv.zError())); + TransDCASig->Fill(track.dxy(pv.position())/(track.d0Error()*track.d0Error()+pv.xError()*pv.yError())); + } + + + DistanceOfClosestApproachToPV -> Fill(track.dxy(pv.position())); DistanceOfClosestApproachToPVVsPhi -> Fill(track.phi(), track.dxy(pv.position())); xPointOfClosestApproachVsZ0wrtPV -> Fill(track.dz(pv.position()),(track.vx()-pv.position().x())); diff --git a/DQM/TrackingMonitorClient/plugins/SealModule.cc b/DQM/TrackingMonitorClient/plugins/SealModule.cc new file mode 100644 index 0000000000000..d5c312bd90b90 --- /dev/null +++ b/DQM/TrackingMonitorClient/plugins/SealModule.cc @@ -0,0 +1,6 @@ +#include "FWCore/Framework/interface/MakerMacros.h" + +#include "DQM/TrackingMonitorClient/plugins/TrackingDQMClientHeavyIons.h" + + +DEFINE_FWK_MODULE(TrackingDQMClientHeavyIons); diff --git a/DQM/TrackingMonitorClient/plugins/TrackingDQMClientHeavyIons.cc b/DQM/TrackingMonitorClient/plugins/TrackingDQMClientHeavyIons.cc new file mode 100644 index 0000000000000..f184cbe57bd07 --- /dev/null +++ b/DQM/TrackingMonitorClient/plugins/TrackingDQMClientHeavyIons.cc @@ -0,0 +1,86 @@ + +#include "DQM/TrackingMonitorClient/plugins/TrackingDQMClientHeavyIons.h" + +#include "DQMServices/ClientConfig/interface/FitSlicesYTool.h" +#include "DQMServices/Core/interface/MonitorElement.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ServiceRegistry/interface/Service.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" + +#include +#include +#include +#include +#include +#include +#include + +using namespace std; +using namespace edm; + +typedef MonitorElement ME; + + +TrackingDQMClientHeavyIons::TrackingDQMClientHeavyIons(const edm::ParameterSet& pset){ + + TopFolder_=pset.getParameter("FolderName"); +} + +void TrackingDQMClientHeavyIons::dqmEndJob(DQMStore::IBooker & ibooker, DQMStore::IGetter & igetter) { + + typedef vector vstring; + + // Update 2014-04-02 + // Migrated back to the endJob. the DQMFileSaver logic has + // to be reviewed to guarantee that the endJob is properly + // considered. The splitting per run is done centrally when + // running the harvesting in production + + // Update 2009-09-23 + // Migrated all code from endJob to this function + // endJob is not necessarily called in the proper sequence + // and does not necessarily book histograms produced in + // that step. + // It more robust to do the histogram manipulation in + // this endRun function + // needed to access the DQMStore::save method + theDQM = 0; + theDQM = Service().operator->(); + + ibooker.cd(); + ibooker.setCurrentFolder(TopFolder_); + + histName = "DCAStats_"; + DCAStats = ibooker.book2D(histName,histName,2,0,2,4,0,4); + DCAStats->getTH2F()->GetYaxis()->SetBinLabel(1,"Mean"); + DCAStats->getTH2F()->GetYaxis()->SetBinLabel(2,"RMS, #sigma"); + DCAStats->getTH2F()->GetYaxis()->SetBinLabel(3,"Skewness ,#gamma_{1}"); + DCAStats->getTH2F()->GetYaxis()->SetBinLabel(4,"Kurtosis, #gamma_{2}"); + DCAStats->getTH2F()->GetXaxis()->SetBinLabel(1,"Longitudinal"); + DCAStats->getTH2F()->GetXaxis()->SetBinLabel(2,"Transverse"); + DCAStats->getTH2F()->SetOption("text"); + + + histName="LongDCASig_HeavyIonTk"; + ME* element = igetter.get(TopFolder_+"/"+histName); + //Longitudinal First + DCAStats->getTH2F()->SetBinContent(1,1,element->getTH1F()->GetMean());//mean + DCAStats->getTH2F()->SetBinContent(1,2,element->getTH1F()->GetRMS());//rms + DCAStats->getTH2F()->SetBinContent(1,3,element->getTH1F()->GetSkewness());//skewness + DCAStats->getTH2F()->SetBinContent(1,4,element->getTH1F()->GetKurtosis());//kurtosis + //Transverse + histName="TransDCASig_HeavyIonTk"; + ME* element1 = igetter.get(TopFolder_+"/"+histName); + //Longitudinal First + DCAStats->getTH2F()->SetBinContent(2,1,element1->getTH1F()->GetMean());//mean + DCAStats->getTH2F()->SetBinContent(2,2,element1->getTH1F()->GetRMS());//rms + DCAStats->getTH2F()->SetBinContent(2,3,element1->getTH1F()->GetSkewness());//skewness + DCAStats->getTH2F()->SetBinContent(2,4,element1->getTH1F()->GetKurtosis());//kurtosis + + + if ( ! outputFileName_.empty() ) theDQM->save(outputFileName_); + +} + + + diff --git a/DQM/TrackingMonitorClient/plugins/TrackingDQMClientHeavyIons.h b/DQM/TrackingMonitorClient/plugins/TrackingDQMClientHeavyIons.h new file mode 100644 index 0000000000000..f2a65380a2fa0 --- /dev/null +++ b/DQM/TrackingMonitorClient/plugins/TrackingDQMClientHeavyIons.h @@ -0,0 +1,37 @@ +#ifndef TRACKINGDQMCLIENTHEAVYIONS_H +#define TRACKINGDQMCLIENTHEAVYIONS_H + + +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "DQMServices/Core/interface/DQMEDHarvester.h" +#include +#include +#include "DQMServices/Core/interface/MonitorElement.h" +#include +#include +#include + +class MonitorElement; + +class TrackingDQMClientHeavyIons : public DQMEDHarvester +{ + public: + TrackingDQMClientHeavyIons(const edm::ParameterSet& pset); + ~TrackingDQMClientHeavyIons() {}; + + void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override; + + private: + unsigned int verbose_; + bool isWildcardUsed_; + bool resLimitedFit_; + + DQMStore* theDQM; + std::string histName; + std::string TopFolder_; + MonitorElement* DCAStats; + std::string outputFileName_; + +}; +#endif + diff --git a/DQM/TrackingMonitorClient/python/TrackingDQMClientHeavyIons_cfi.py b/DQM/TrackingMonitorClient/python/TrackingDQMClientHeavyIons_cfi.py new file mode 100644 index 0000000000000..d0244534dde10 --- /dev/null +++ b/DQM/TrackingMonitorClient/python/TrackingDQMClientHeavyIons_cfi.py @@ -0,0 +1,5 @@ +import FWCore.ParameterSet.Config as cms + +hiTrackingDqmClientHeavyIons = cms.EDAnalyzer("TrackingDQMClientHeavyIons", + FolderName = cms.string('Tracking/TrackParameters/GeneralProperties') + ) diff --git a/DQM/TrackingMonitorSource/python/TrackingSourceConfigP5_cff.py b/DQM/TrackingMonitorSource/python/TrackingSourceConfigP5_cff.py index 98736269e095b..463793f698874 100644 --- a/DQM/TrackingMonitorSource/python/TrackingSourceConfigP5_cff.py +++ b/DQM/TrackingMonitorSource/python/TrackingSourceConfigP5_cff.py @@ -71,6 +71,6 @@ # Clone for Heavy Ion Tracks (for HI Collisions) import DQM.TrackingMonitor.TrackEfficiencyMonitor_cfi TrackEffMon_hi = DQM.TrackingMonitor.TrackEfficiencyMonitor_cfi.TrackEffMon.clone() -TrackEffMon_hi.TKTrackCollection = 'hiGlobalPrimTracks' +TrackEffMon_hi.TKTrackCollection = 'hiGeneralTracks' TrackEffMon_hi.AlgoName = 'HeavyIonTk' TrackEffMon_hi.FolderName = 'Tracking/TrackParameters/TrackEfficiency' diff --git a/DQM/TrackingMonitorSource/python/TrackingSourceConfig_Tier0_HeavyIons_cff.py b/DQM/TrackingMonitorSource/python/TrackingSourceConfig_Tier0_HeavyIons_cff.py new file mode 100644 index 0000000000000..4e7788a4e2d59 --- /dev/null +++ b/DQM/TrackingMonitorSource/python/TrackingSourceConfig_Tier0_HeavyIons_cff.py @@ -0,0 +1,10 @@ +import FWCore.ParameterSet.Config as cms + +# TrackingMonitor #### +import DQM.TrackingMonitor.TrackerHeavyIonTrackingMonitor_cfi +TrackMon_hi = DQM.TrackingMonitor.TrackerHeavyIonTrackingMonitor_cfi.TrackerHeavyIonTrackMon.clone() +TrackMon_hi.FolderName = 'Tracking/TrackParameters' +TrackMon_hi.BSFolderName = 'Tracking/TrackParameters/BeamSpotParameters' +TrackMon_hi.TrackProducer = cms.InputTag("hiGeneralTracks") + +TrackMonDQMTier0_hi = cms.Sequence(TrackMon_hi) diff --git a/DQM/TrackingMonitorSource/python/dedxHarmonic2monitor_cfi.py b/DQM/TrackingMonitorSource/python/dedxHarmonic2monitor_cfi.py index d5bd19afc5934..a96f6255a6165 100644 --- a/DQM/TrackingMonitorSource/python/dedxHarmonic2monitor_cfi.py +++ b/DQM/TrackingMonitorSource/python/dedxHarmonic2monitor_cfi.py @@ -2,7 +2,7 @@ selectedDeDxHarm = {} -from RecoTracker.DeDx.dedxHarmonic2_cfi import * +from RecoTracker.DeDx.dedxEstimators_cff import dedxHarmonic2 dedxDQMHarm2SP = dedxHarmonic2.clone() dedxDQMHarm2SP.tracks = cms.InputTag("generalTracks") dedxDQMHarm2SP.trajectoryTrackAssociation = cms.InputTag("generalTracks") diff --git a/DQMOffline/Alignment/python/ALCARECOTkAlDQM_cff.py b/DQMOffline/Alignment/python/ALCARECOTkAlDQM_cff.py index 3f302d154a3f9..80708e564c92d 100644 --- a/DQMOffline/Alignment/python/ALCARECOTkAlDQM_cff.py +++ b/DQMOffline/Alignment/python/ALCARECOTkAlDQM_cff.py @@ -206,6 +206,8 @@ AlgoName = 'ALCARECO'+__selectionName, FolderName = "AlCaReco/"+__selectionName, BSFolderName = "AlCaReco/"+__selectionName+"/BeamSpot", + primaryVertex = "hiSelectedVertex", + allTrackProducer = "hiGeneralTracks", # margins and settings TkSizeBin = 71, TkSizeMin = -0.5, @@ -216,7 +218,7 @@ ALCARECOTkAlMinBiasHITkAlDQM = ALCARECOTkAlMinBiasTkAlDQM.clone( #names and desigantions TrackProducer = 'ALCARECO'+__selectionName, - ReferenceTrackProducer = 'hiSelectedTracks', + ReferenceTrackProducer = 'hiGeneralTracks', CaloJetCollection = 'iterativeConePu5CaloJets', AlgoName = 'ALCARECO'+__selectionName, FolderName = "AlCaReco/"+__selectionName, @@ -234,7 +236,7 @@ histLabel = __selectionName, HLTPaths = [], eventSetupPathsKey = ALCARECOTkAlMinBiasHIHLT.eventSetupPathsKey.value() -) + ) ALCARECOTkAlMinBiasHIDQM = cms.Sequence( ALCARECOTkAlMinBiasHITrackingDQM + ALCARECOTkAlMinBiasHITkAlDQM+ALCARECOTkAlMinBiasHIHLTDQM) diff --git a/DQMOffline/CalibTracker/python/ALCARECOSiStripCalMinBiasDQMHI_cff.py b/DQMOffline/CalibTracker/python/ALCARECOSiStripCalMinBiasDQMHI_cff.py index 6c9501d71270a..b36d29687744d 100644 --- a/DQMOffline/CalibTracker/python/ALCARECOSiStripCalMinBiasDQMHI_cff.py +++ b/DQMOffline/CalibTracker/python/ALCARECOSiStripCalMinBiasDQMHI_cff.py @@ -15,6 +15,8 @@ AlgoName = 'ALCARECO'+__selectionName, FolderName = "AlCaReco/"+__selectionName, BSFolderName = "AlCaReco/"+__selectionName+"/BeamSpot", + primaryVertex = "hiSelectedVertex", + allTrackProducer = "hiGeneralTracks", # margins and settings TkSizeBin = 300, TkSizeMin = -0.5, @@ -27,7 +29,7 @@ TrackProducer = 'ALCARECO'+__selectionName, AlgoName = 'ALCARECO'+__selectionName, FolderName = "AlCaReco/"+__selectionName, - ReferenceTrackProducer = 'hiSelectedTracks', + ReferenceTrackProducer = 'hiGeneralTracks', # margins and settings fillInvariantMass = False, TrackPtMax = 30, diff --git a/DQMOffline/Configuration/python/DQMOfflineHeavyIons_SecondStep_cff.py b/DQMOffline/Configuration/python/DQMOfflineHeavyIons_SecondStep_cff.py index 8e919edf30032..17d30aa066cbe 100644 --- a/DQMOffline/Configuration/python/DQMOfflineHeavyIons_SecondStep_cff.py +++ b/DQMOffline/Configuration/python/DQMOfflineHeavyIons_SecondStep_cff.py @@ -36,13 +36,15 @@ from DQMOffline.L1Trigger.L1TriggerDqmOffline_cff import * from DQMOffline.Trigger.DQMOffline_Trigger_Client_cff import * from DQMOffline.Trigger.DQMOffline_HLT_Client_cff import * +from DQM.TrackingMonitorClient.TrackingDQMClientHeavyIons_cfi import * DQMOfflineHeavyIons_SecondStep_PrePOG = cms.Sequence( muonQualityTests * photonOfflineDQMClient * l1TriggerDqmOfflineClient * triggerOfflineDQMClient * hltOfflineDQMClient - * alcaBeamMonitorClient + * alcaBeamMonitorClient + * hiTrackingDqmClientHeavyIons ) DQMOfflineHeavyIons_SecondStepPOG = cms.Sequence( dqmRefHistoRootFileGetter * diff --git a/DQMOffline/Configuration/python/DQMOfflineHeavyIons_cff.py b/DQMOffline/Configuration/python/DQMOfflineHeavyIons_cff.py index 5f9b939eb27ee..2e47ba45ff2bf 100644 --- a/DQMOffline/Configuration/python/DQMOfflineHeavyIons_cff.py +++ b/DQMOffline/Configuration/python/DQMOfflineHeavyIons_cff.py @@ -35,6 +35,8 @@ from DQMOffline.Trigger.DQMOffline_Trigger_cff import * #from DQMOffline.RecoB.PrimaryVertexMonitor_cff import * from DQM.Physics.DQMPhysics_cff import * +from DQM.TrackingMonitorSource.TrackingSourceConfig_Tier0_HeavyIons_cff import * + egammaDQMOffline.remove(electronAnalyzerSequence) egammaDQMOffline.remove(zmumugammaAnalysis) @@ -46,7 +48,15 @@ hltResults.RecHitsEBTag = cms.untracked.InputTag("ecalRecHit", "EcalRecHitsEB") hltResults.RecHitsEETag = cms.untracked.InputTag("ecalRecHit", "EcalRecHitsEE") + +globalAnalyzer.inputTags.offlinePVs = cms.InputTag("hiSelectedVertex") +trackerAnalyzer.inputTags.offlinePVs = cms.InputTag("hiSelectedVertex") +tightAnalyzer.inputTags.offlinePVs = cms.InputTag("hiSelectedVertex") +looseAnalyzer.inputTags.offlinePVs = cms.InputTag("hiSelectedVertex") + + DQMOfflineHeavyIonsPrePOG = cms.Sequence( muonMonitors + * TrackMonDQMTier0_hi * jetMETDQMOfflineSource * egammaDQMOffline * triggerOfflineDQMSource diff --git a/DQMOffline/Trigger/python/DQMOffline_Trigger_cff.py b/DQMOffline/Trigger/python/DQMOffline_Trigger_cff.py index 95e3edac82df2..baa751279419f 100644 --- a/DQMOffline/Trigger/python/DQMOffline_Trigger_cff.py +++ b/DQMOffline/Trigger/python/DQMOffline_Trigger_cff.py @@ -57,6 +57,9 @@ # tracking from DQMOffline.Trigger.TrackingMonitoring_cff import * +# photon jet +from DQMOffline.Trigger.HigPhotonJetHLTOfflineSource_cfi import * + #import DQM.TrackingMonitor.TrackerCollisionTrackingMonitor_cfi #TrackerCollisionTrackMonHLT = DQM.TrackingMonitor.TrackerCollisionTrackingMonitor_cfi.TrackerCollisionTrackMon.clone() #TrackerCollisionTrackMonHLT.FolderName = 'HLT/Tracking' @@ -82,6 +85,7 @@ hltInclusiveVBFSource * # TrackerCollisionTrackMonHLT * trackingMonitorHLT * + higPhotonJetHLTOfflineSource * dqmEnvHLT * topHLTriggerOfflineDQM) diff --git a/DQMOffline/Trigger/python/HigPhotonJetHLTOfflineSource_cfi.py b/DQMOffline/Trigger/python/HigPhotonJetHLTOfflineSource_cfi.py new file mode 100644 index 0000000000000..1c4fa3aa3d535 --- /dev/null +++ b/DQMOffline/Trigger/python/HigPhotonJetHLTOfflineSource_cfi.py @@ -0,0 +1,44 @@ +import FWCore.ParameterSet.Config as cms + +higPhotonJetHLTOfflineSource = cms.EDAnalyzer( + "HigPhotonJetHLTOfflineSource", + # Used when fetching triggerSummary and triggerResults + hltProcessName = cms.string("HLT"), + # HLT paths passing any one of these regular expressions will be included + hltPathsToCheck = cms.vstring( + "HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v", + "HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v", + "HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v", + "HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v", + "HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v", + "HLT_Photon135_PFMET40_v", + "HLT_Photon150_PFMET40_v", + "HLT_Photon160_PFMET40_v", + "HLT_Photon250_NoHE_PFMET40_v", + "HLT_Photon300_NoHE_PFMET40_v", + "HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v", + "HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v", + "HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v", + "HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v", + "HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v", + "HLT_Photon135_VBF_v", + "HLT_Photon150_VBF_v", + "HLT_Photon160_VBF_v", + "HLT_Photon250_NoHE_VBF_v", + "HLT_Photon300_NoHE_VBF_v", + ), + # Location of plots in DQM + dirname = cms.untracked.string("HLT/Higgs/PhotonJet"), + verbose = cms.untracked.bool(False), # default: False + triggerAccept = cms.untracked.bool(True), # default: True + triggerResultsToken = cms.InputTag("TriggerResults"), + pvToken = cms.InputTag("offlinePrimaryVertices"), + photonsToken = cms.InputTag("gedPhotons"), + pfMetToken = cms.InputTag("pfMet"), + pfJetsToken = cms.InputTag("ak4PFJets"), + + # cuts + pfjetMinPt = cms.untracked.double(30.0), #GeV + photonMinPt = cms.untracked.double(20.0), #GeV + +) diff --git a/DQMOffline/Trigger/src/HigPhotonJetHLTOfflineSource.cc b/DQMOffline/Trigger/src/HigPhotonJetHLTOfflineSource.cc new file mode 100644 index 0000000000000..19c5d8fb68eb0 --- /dev/null +++ b/DQMOffline/Trigger/src/HigPhotonJetHLTOfflineSource.cc @@ -0,0 +1,313 @@ +// -*- C++ -*- +// +// Package: HigPhotonJetHLTOfflineSource +// Class: HigPhotonJetHLTOfflineSource +// + +// +// Author: Xin Shi +// Created: 2014.07.22 +// + +// system include files +#include +#include + +// user include files +#include "DQMServices/Core/interface/DQMStore.h" +#include "DQMServices/Core/interface/MonitorElement.h" +#include "DQMServices/Core/interface/DQMEDAnalyzer.h" + +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/ConsumesCollector.h" +#include "FWCore/Framework/interface/MakerMacros.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/ServiceRegistry/interface/Service.h" +#include "FWCore/Common/interface/TriggerNames.h" + +#include "HLTrigger/HLTcore/interface/HLTConfigProvider.h" + +#include "DataFormats/Common/interface/TriggerResults.h" +#include "DataFormats/JetReco/interface/CaloJetCollection.h" +#include "DataFormats/VertexReco/interface/Vertex.h" +#include "DataFormats/VertexReco/interface/VertexFwd.h" +#include "DataFormats/EgammaCandidates/interface/Photon.h" +#include "DataFormats/EgammaCandidates/interface/PhotonFwd.h" +#include "DataFormats/METReco/interface/PFMETCollection.h" +#include "DataFormats/METReco/interface/PFMET.h" +#include "DataFormats/JetReco/interface/PFJetCollection.h" +#include "DataFormats/JetReco/interface/PFJet.h" +#include "DataFormats/Math/interface/deltaPhi.h" + +#include +#include + +// Define the interface +class HigPhotonJetHLTOfflineSource : public DQMEDAnalyzer { + +public: + + explicit HigPhotonJetHLTOfflineSource(const edm::ParameterSet&); + +private: + + // Analyzer Methods + virtual void dqmBeginRun(const edm::Run &, + const edm::EventSetup &) override; + virtual void bookHistograms(DQMStore::IBooker &, + edm::Run const &, + edm::EventSetup const &) override; + virtual void analyze(const edm::Event &, + const edm::EventSetup &) override; + virtual void endRun(const edm::Run &, + const edm::EventSetup &) override; + bool isMonitoredTriggerAccepted(const edm::TriggerNames, + const edm::Handle); + + // Input from Configuration File + edm::ParameterSet pset_; + std::string hltProcessName_; + std::vector hltPathsToCheck_; + std::string dirname_; + bool verbose_; + bool triggerAccept_; + + edm::EDGetTokenT triggerResultsToken_; + edm::EDGetTokenT pvToken_; + edm::EDGetTokenT photonsToken_; + edm::EDGetTokenT pfMetToken_; + edm::EDGetTokenT pfJetsToken_; + + double pfjetMinPt_; + double photonMinPt_; + + // Member Variables + + MonitorElement* nvertices_; + MonitorElement* nphotons_; + MonitorElement* photonpt_; + MonitorElement* photonrapidity_; + MonitorElement* pfmet_; + MonitorElement* pfmetphi_; + MonitorElement* npfjets_; + MonitorElement* delphiphomet_; + MonitorElement* delphijetmet_; + MonitorElement* invmassjj_; + MonitorElement* deletajj_; + MonitorElement* triggers_; + MonitorElement* trigvsnvtx_; + + double evtsrun_; + +}; + + +// Class Methods + +HigPhotonJetHLTOfflineSource::HigPhotonJetHLTOfflineSource(const edm::ParameterSet& pset) : + pset_(pset) +{ + hltProcessName_ = pset.getParameter("hltProcessName"); + hltPathsToCheck_ = pset.getParameter>("hltPathsToCheck"); + verbose_ = pset.getUntrackedParameter("verbose", false); + triggerAccept_ = pset.getUntrackedParameter("triggerAccept", true); + triggerResultsToken_ = consumes (pset.getParameter("triggerResultsToken")); + dirname_ = pset.getUntrackedParameter("dirname", std::string("HLT/Higgs/PhotonJet/")); + pvToken_ = consumes (pset.getParameter("pvToken")); + photonsToken_ = consumes (pset.getParameter("photonsToken")); + pfMetToken_ = consumes (pset.getParameter("pfMetToken")); + pfJetsToken_ = consumes (pset.getParameter("pfJetsToken")); + pfjetMinPt_ = pset.getUntrackedParameter("pfjetMinPt", 0.0); + photonMinPt_ = pset.getUntrackedParameter("photonMinPt", 0.0); +} + +void +HigPhotonJetHLTOfflineSource::dqmBeginRun(const edm::Run & iRun, + const edm::EventSetup & iSetup) +{ // Initialize hltConfig + HLTConfigProvider hltConfig; + bool changedConfig; + if (!hltConfig.init(iRun, iSetup, hltProcessName_, changedConfig)) { + edm::LogError("HLTPhotonJetVal") << "Initialization of HLTConfigProvider failed!!"; + return; + } + + evtsrun_ = 0; +} + + +void +HigPhotonJetHLTOfflineSource::bookHistograms(DQMStore::IBooker & iBooker, + edm::Run const & iRun, + edm::EventSetup const & iSetup) +{ + iBooker.setCurrentFolder(dirname_); + nvertices_ = iBooker.book1D("nvertices", "Number of vertices", 100, 0, 100); + nphotons_ = iBooker.book1D("nphotons", "Number of photons", 100, 0, 10); + photonpt_ = iBooker.book1D("photonpt", "Photons pT", 100, 0, 500); + photonrapidity_ = iBooker.book1D("photonrapidity", "Photons rapidity;y_{#gamma}", 100, -2.5, 2.5); + pfmet_ = iBooker.book1D("pfmet", "PF MET", 100, 0, 250); + pfmetphi_ = iBooker.book1D("pfmetphi", "PF MET phi;#phi_{PFMET}", 100, -4, 4); + delphiphomet_ = iBooker.book1D("delphiphomet", "#Delta#phi(photon, MET);#Delta#phi(#gamma,MET)", 100, 0, 4); + npfjets_ = iBooker.book1D("npfjets", "Number of PF Jets", 100, 0, 20); + delphijetmet_ = iBooker.book1D("delphijetmet", "#Delta#phi(PFJet, MET);#Delta#phi(Jet,MET)", 100, 0, 4); + invmassjj_ = iBooker.book1D("invmassjj", "Inv mass two leading jets;M_{jj}[GeV]", 100, 0, 2000); + deletajj_ = iBooker.book1D("deletajj", "#Delta#eta(jj);|#Delta#eta_{jj}|", 100, 0, 6); + triggers_ = iBooker.book1D("triggers", "Triggers", hltPathsToCheck_.size(), 0, hltPathsToCheck_.size()); + trigvsnvtx_ = iBooker.book2D("trigvsnvtx", "Trigger vs. # vertices;N_{vertices};Trigger", 100, 0, 100, hltPathsToCheck_.size(), 0, hltPathsToCheck_.size()); +} + + +void +HigPhotonJetHLTOfflineSource::analyze(const edm::Event& iEvent, + const edm::EventSetup& iSetup) +{ + // Count total number of events in one run + evtsrun_++; + + edm::Handle triggerResults; + iEvent.getByToken(triggerResultsToken_, triggerResults); + if(!triggerResults.isValid()) { + edm::LogError("HigPhotonJetHLT")<<"Missing triggerResults collection" << std::endl; + return; + } + + // Check whether contains monitored trigger and accepted + const edm::TriggerNames triggerNames = iEvent.triggerNames(*triggerResults); + bool triggered = isMonitoredTriggerAccepted(triggerNames, triggerResults); + + if (!triggered) return; + + // Test scale + // if (evtsrun_ > 10) return; + + // N Vertices + edm::Handle vertices; + iEvent.getByToken(pvToken_, vertices); + if(!vertices.isValid()) return; + if (verbose_) + std::cout << "xshi:: N vertices : " << vertices->size() << std::endl; + + // Set trigger name labels + for (size_t i = 0; i < hltPathsToCheck_.size(); i++) { + triggers_->setBinLabel(i+1, hltPathsToCheck_[i]); + } + + // Fill trigger info + for (unsigned int itrig = 0; itrig < triggerResults->size(); itrig++){ + std::string triggername = triggerNames.triggerName(itrig); + for (size_t i = 0; i < hltPathsToCheck_.size(); i++) { + if ( triggername.find(hltPathsToCheck_[i]) != std::string::npos) { + triggers_->Fill(i); + trigvsnvtx_->Fill(vertices->size(), i); + } + } + } + + nvertices_->Fill(vertices->size()); + + // PF MET + edm::Handle pfmets; + iEvent.getByToken(pfMetToken_, pfmets); + if (!pfmets.isValid()) return; + const reco::PFMET pfmet = pfmets->front(); + pfmet_->Fill(pfmet.et()); + if (verbose_) + std::cout << "xshi:: number of pfmets: " << pfmets->size() << std::endl; + pfmetphi_->Fill(pfmet.phi()); + + // Photons + edm::Handle photons; + iEvent.getByToken(photonsToken_, photons); + if(!photons.isValid()) return; + int nphotons = 0; + for(reco::PhotonCollection::const_iterator phoIter=photons->begin(); + phoIter!=photons->end();++phoIter){ + if (phoIter->pt() < photonMinPt_ ) continue; + nphotons++; + photonpt_->Fill(phoIter->pt()); + photonrapidity_->Fill(phoIter->rapidity()); + double tmp_delphiphomet = fabs(deltaPhi(phoIter->phi(), pfmet.phi())); + delphiphomet_->Fill(tmp_delphiphomet); + } + nphotons_->Fill(nphotons); + + // PF Jet + edm::Handle pfjets; + iEvent.getByToken(pfJetsToken_, pfjets); + if(!pfjets.isValid()) return; + if (verbose_) + std::cout << "xshi:: N pfjets : " << pfjets->size() << std::endl; + + double min_delphijetmet = 6.0; + TLorentzVector p4jet1, p4jet2, p4jj; + // Two leading jets eta + double etajet1(0), etajet2(0); + int njet = 0; + for(reco::PFJetCollection::const_iterator jetIter=pfjets->begin(); + jetIter!=pfjets->end();++jetIter){ + if (jetIter->pt() < pfjetMinPt_ ) continue; + njet++; + + double tmp_delphijetmet = fabs(deltaPhi(jetIter->phi(), pfmet.phi())); + if (tmp_delphijetmet < min_delphijetmet) + min_delphijetmet = tmp_delphijetmet; + + if (njet == 1) { + p4jet1.SetXYZM(jetIter->px(), jetIter->py(), jetIter->pz(), jetIter->mass()); + etajet1 = jetIter->eta(); + } + if (njet == 2){ + p4jet2.SetXYZM(jetIter->px(), jetIter->py(), jetIter->pz(), jetIter->mass()); + etajet2 = jetIter->eta(); + } + } + npfjets_->Fill(njet); + + delphijetmet_->Fill(min_delphijetmet); + p4jj = p4jet1 + p4jet2; + double deletajj = etajet1 - etajet2 ; + if (verbose_) + std::cout << "xshi:: invmass jj " << p4jj.M() << std::endl; + + invmassjj_->Fill(p4jj.M()); + deletajj_->Fill(deletajj); +} + + +void +HigPhotonJetHLTOfflineSource::endRun(const edm::Run & iRun, + const edm::EventSetup& iSetup) +{ + // Normalize to the total number of events in the run + TH2F* h = trigvsnvtx_->getTH2F(); + double norm = evtsrun_*hltPathsToCheck_.size()/h->Integral(); + h->Scale(norm); + if (verbose_) { + std::cout << "xshi:: endRun total number of events: " << evtsrun_ + << ", integral = " << h->Integral() + << ", norm = " << norm << std::endl; + } +} + +bool +HigPhotonJetHLTOfflineSource::isMonitoredTriggerAccepted(const edm::TriggerNames triggerNames, + const edm::Handle triggerResults ) +{ + for (unsigned int itrig = 0; itrig < triggerResults->size(); itrig++){ + // Only consider the triggered case. + if ( triggerAccept_ && ( (*triggerResults)[itrig].accept() != 1) ) continue; + std::string triggername = triggerNames.triggerName(itrig); + for (size_t i = 0; i < hltPathsToCheck_.size(); i++) { + if ( triggername.find(hltPathsToCheck_[i]) != std::string::npos) { + return true; + } + } + } + + return false; +} + +//define this as a plug-in +DEFINE_FWK_MODULE(HigPhotonJetHLTOfflineSource); diff --git a/DQMServices/Components/src/DQMFileSaver.cc b/DQMServices/Components/src/DQMFileSaver.cc index f64d1429020de..445e01f7df2c0 100644 --- a/DQMServices/Components/src/DQMFileSaver.cc +++ b/DQMServices/Components/src/DQMFileSaver.cc @@ -112,13 +112,15 @@ DQMFileSaver::saveForOffline(const std::string &workflow, int run, int lumi) con { std::vector systems = (dbe_->cd(), dbe_->getSubdirs()); - std::cout << " DQMFileSaver: storing EventInfo folders for Run: " + edm::LogAbsolute msg("fileAction"); + msg << "DQMFileSaver: storing EventInfo folders for Run: " << run << ", Lumi Section: " << lumi << ", Subsystems: " ; for (size_t i = 0, e = systems.size(); i != e; ++i) { if (systems[i] != "Reference") { dbe_->cd(); - std::cout << systems[i] << " " ; + msg << systems[i] << " " ; + dbe_->save(filename, systems[i]+"/EventInfo", "^(Reference/)?([^/]+)", rewrite, @@ -127,8 +129,9 @@ DQMFileSaver::saveForOffline(const std::string &workflow, int run, int lumi) con DQMStore::SaveWithoutReference, dqm::qstatus::STATUS_OK, fileUpdate_ ? "UPDATE" : "RECREATE"); - // from now on update newly created file - if (fileUpdate_.load() == 0) fileUpdate_ = 1; + + // from now on update newly created file + if (fileUpdate_.load() == 0) fileUpdate_ = 1; } } } diff --git a/DQMServices/Core/interface/DQMEDHarvester.h b/DQMServices/Core/interface/DQMEDHarvester.h index b38a9765a84cf..465c971f8cc23 100644 --- a/DQMServices/Core/interface/DQMEDHarvester.h +++ b/DQMServices/Core/interface/DQMEDHarvester.h @@ -1,9 +1,10 @@ #ifndef CORE_DQMED_HARVESTER_H -# define CORE_DQMED_HARVESTER_H +#define CORE_DQMED_HARVESTER_H //<<<<<< INCLUDES >>>>>> #include "FWCore/Framework/interface/one/EDAnalyzer.h" #include "DQMServices/Core/interface/DQMStore.h" + //<<<<<< PUBLIC DEFINES >>>>>> //<<<<<< PUBLIC CONSTANTS >>>>>> //<<<<<< PUBLIC TYPES >>>>>> @@ -12,7 +13,7 @@ //<<<<<< CLASS DECLARATIONS >>>>>> class DQMEDHarvester -: public edm::one::EDAnalyzer +: public edm::one::EDAnalyzer { public: DQMEDHarvester(void); @@ -22,6 +23,7 @@ class DQMEDHarvester virtual void beginRun(edm::Run const&, edm::EventSetup const&) {}; virtual void analyze(edm::Event const&, edm::EventSetup const&) final {}; virtual void endRun(edm::Run const&, edm::EventSetup const&) {}; + virtual void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const&) final {}; virtual void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const&) final; virtual void endJob() final; virtual void dqmEndLuminosityBlock(DQMStore::IBooker &, DQMStore::IGetter &, edm::LuminosityBlock const &, edm::EventSetup const&) {}; diff --git a/DataFormats/HeavyIonEvent/interface/VoronoiBackground.h b/DataFormats/HeavyIonEvent/interface/VoronoiBackground.h new file mode 100644 index 0000000000000..a6185c6c6d3b3 --- /dev/null +++ b/DataFormats/HeavyIonEvent/interface/VoronoiBackground.h @@ -0,0 +1,46 @@ +#ifndef DataFormats_VoronoiBackground_h +#define DataFormats_VoronoiBackground_h + +#include "DataFormats/Candidate/interface/Candidate.h" +#include "DataFormats/Common/interface/ValueMap.h" + +#include +#include + +namespace reco { class VoronoiBackground { +public: + VoronoiBackground(); + VoronoiBackground(double pt0, double pt1, double mt0, double mt1, double v); + virtual ~VoronoiBackground(); + + double pt() const{ return pt_posteq; } + double pt_equalized() const{ return pt_posteq; } + double pt_subtracted() const{ return pt_preeq; } + + double mt() const{ return mt_posteq; } + double mt_equalized() const{ return mt_posteq; } + double mt_initial() const{ return mt_preeq; } + + double area() const{ return voronoi_area; } + +protected: + + double pt_preeq; + double pt_posteq; + + double mt_preeq; + double mt_posteq; + + double voronoi_area; + +}; + + typedef edm::ValueMap VoronoiMap; + typedef edm::Ref CandidateViewRef; + + +} + +#endif + + diff --git a/DataFormats/HeavyIonEvent/src/VoronoiBackground.cc b/DataFormats/HeavyIonEvent/src/VoronoiBackground.cc new file mode 100644 index 0000000000000..c9b67e1ac78b9 --- /dev/null +++ b/DataFormats/HeavyIonEvent/src/VoronoiBackground.cc @@ -0,0 +1,28 @@ +#include "DataFormats/HeavyIonEvent/interface/VoronoiBackground.h" +using namespace reco; + +VoronoiBackground::VoronoiBackground() + : +pt_preeq(0), +pt_posteq(0), +mt_preeq(0), +mt_posteq(0), +voronoi_area(0) +{ +} + +VoronoiBackground::VoronoiBackground(double pt0, double pt1, double mt0, double mt1, double v) + : + pt_preeq(pt0), + pt_posteq(pt1), + mt_preeq(mt0), + mt_posteq(mt1), + voronoi_area(v) +{ +} + +VoronoiBackground::~VoronoiBackground() +{ +} + + diff --git a/DataFormats/HeavyIonEvent/src/classes.h b/DataFormats/HeavyIonEvent/src/classes.h index 8b7e19d0b7ae2..f7393781df694 100644 --- a/DataFormats/HeavyIonEvent/src/classes.h +++ b/DataFormats/HeavyIonEvent/src/classes.h @@ -1,6 +1,8 @@ #include "DataFormats/HeavyIonEvent/interface/Centrality.h" #include "DataFormats/HeavyIonEvent/interface/EvtPlane.h" #include "DataFormats/HeavyIonEvent/interface/HeavyIon.h" +#include "DataFormats/HeavyIonEvent/interface/VoronoiBackground.h" + #include "DataFormats/Common/interface/Wrapper.h" namespace DataFormats_HeavyIonEvent { @@ -18,6 +20,16 @@ namespace DataFormats_HeavyIonEvent { reco::EvtPlaneCollection evcol; edm::Wrapper wevcol; + reco::VoronoiBackground vor; + edm::Wrapper wvor; + + reco::VoronoiMap pfvorvmap; + edm::Wrapper pfwvorvmap; + + std::vector vecvor; + edm::Wrapper > vecwvor; + + pat::HeavyIon p_hi; edm::Wrapper w_v_p_hi; }; diff --git a/DataFormats/HeavyIonEvent/src/classes_def.xml b/DataFormats/HeavyIonEvent/src/classes_def.xml index 54191c4c69179..3339db96c6222 100644 --- a/DataFormats/HeavyIonEvent/src/classes_def.xml +++ b/DataFormats/HeavyIonEvent/src/classes_def.xml @@ -15,4 +15,10 @@ + + + + + + diff --git a/DataFormats/TrackReco/interface/DeDxHit.h b/DataFormats/TrackReco/interface/DeDxHit.h index f47473e552a5a..6758c7af5846e 100644 --- a/DataFormats/TrackReco/interface/DeDxHit.h +++ b/DataFormats/TrackReco/interface/DeDxHit.h @@ -14,16 +14,16 @@ class DeDxHit public: DeDxHit() {} - DeDxHit(float ch, float dist, float len, DetId detId); + DeDxHit(float ch, float mom, float len, DetId detId); /// Return the angle and thick normalized, calibrated energy release float charge() const { return m_charge; } - /// Return the distance of the hit from the interaction point - float distance() const { - return m_distance; + /// Return the momentum of the trajectory at the interaction point + float momentum() const { + return m_momentum; } /// Return the path length @@ -59,7 +59,7 @@ class DeDxHit // Those data members should be "compressed" once usage // of ROOT/reflex precision specifier will be available in CMSSW float m_charge; - float m_distance; + float m_momentum; float m_pathLength; char m_subDetId; }; diff --git a/DataFormats/TrackReco/src/DeDxHit.cc b/DataFormats/TrackReco/src/DeDxHit.cc index fc83c51731d72..f2ce3be3beadd 100644 --- a/DataFormats/TrackReco/src/DeDxHit.cc +++ b/DataFormats/TrackReco/src/DeDxHit.cc @@ -9,9 +9,9 @@ #include "DataFormats/SiStripDetId/interface/TECDetId.h" using namespace reco; -DeDxHit::DeDxHit(float ch, float dist, float len, DetId id): +DeDxHit::DeDxHit(float ch, float mom, float len, DetId id): m_charge(ch), - m_distance(dist), + m_momentum(mom), m_pathLength(len) { diff --git a/DataFormats/TrackReco/src/classes_def.xml b/DataFormats/TrackReco/src/classes_def.xml index 87e283cede579..34c60bebbb562 100644 --- a/DataFormats/TrackReco/src/classes_def.xml +++ b/DataFormats/TrackReco/src/classes_def.xml @@ -394,8 +394,8 @@ - - + + diff --git a/EventFilter/CSCRawToDigi/plugins/CSCDigiToRawModule.cc b/EventFilter/CSCRawToDigi/plugins/CSCDigiToRawModule.cc index 5cb22ae170e89..35a79ffb8418f 100644 --- a/EventFilter/CSCRawToDigi/plugins/CSCDigiToRawModule.cc +++ b/EventFilter/CSCRawToDigi/plugins/CSCDigiToRawModule.cc @@ -21,6 +21,8 @@ CSCDigiToRawModule::CSCDigiToRawModule(const edm::ParameterSet & pset): theFormatVersion = pset.getParameter("useFormatVersion"); // pre-LS1 - '2005'. post-LS1 - '2013' usePreTriggers = pset.getParameter("usePreTriggers"); // disable checking CLCT PreTriggers digis + packEverything_ = pset.getParameter("packEverything"); // don't check for consistency with trig primitives + // overrides usePreTriggers wd_token = consumes( pset.getParameter("wireDigiTag") ); sd_token = consumes( pset.getParameter("stripDigiTag") ); @@ -63,6 +65,8 @@ void CSCDigiToRawModule::fillDescriptions(edm::ConfigurationDescriptions & descr setComment("Set to 2005 for pre-LS1 CSC data format, 2013 - new post-LS1 CSC data format"); desc.add("usePreTriggers", true)-> setComment("Set to false if CSCCLCTPreTrigger digis are not available"); + desc.add("packEverything", false)-> + setComment("Set to true to disable trigger-related constraints on readout data"); desc.add("wireDigiTag", edm::InputTag("simMuonCSCDigis","MuonCSCWireDigi")); desc.add("stripDigiTag",edm::InputTag("simMuonCSCDigis","MuonCSCStripDigi")); @@ -115,7 +119,8 @@ void CSCDigiToRawModule::produce( edm::Event & e, const edm::EventSetup& c ){ // Create the packed data packer->createFedBuffers(*stripDigis, *wireDigis, *comparatorDigis, *alctDigis, *clctDigis, *preTriggers, *correlatedLCTDigis, - *(fed_buffers.get()), theMapping, e, theFormatVersion, usePreTriggers); + *(fed_buffers.get()), theMapping, e, theFormatVersion, usePreTriggers, + packEverything_); // put the raw data to the event e.put(fed_buffers, "CSCRawData"); diff --git a/EventFilter/CSCRawToDigi/src/CSCDigiToRaw.cc b/EventFilter/CSCRawToDigi/src/CSCDigiToRaw.cc index 6e0f8afd343d0..616c08f6b67f6 100644 --- a/EventFilter/CSCRawToDigi/src/CSCDigiToRaw.cc +++ b/EventFilter/CSCRawToDigi/src/CSCDigiToRaw.cc @@ -87,14 +87,15 @@ bool accept(const CSCDetId & cscId, const CSCCLCTPreTriggerCollection & lcts, CSCDigiToRaw::CSCDigiToRaw(const edm::ParameterSet & pset) - : alctWindowMin_(pset.getParameter("alctWindowMin")), + : alctWindowMin_(pset.getParameter("alctWindowMin")), alctWindowMax_(pset.getParameter("alctWindowMax")), clctWindowMin_(pset.getParameter("clctWindowMin")), clctWindowMax_(pset.getParameter("clctWindowMax")), preTriggerWindowMin_(pset.getParameter("preTriggerWindowMin")), preTriggerWindowMax_(pset.getParameter("preTriggerWindowMax")), - theFormatVersion(2005), - usePreTriggers(true) + formatVersion_(2005), + usePreTriggers_(true), + packEverything_(false) {} void CSCDigiToRaw::beginEvent(const CSCChamberMap* electronicsMap) @@ -113,12 +114,12 @@ CSCEventData & CSCDigiToRaw::findEventData(const CSCDetId & cscDetId) { // make an entry, telling it the correct chamberType int chamberType = chamberId.iChamberType(); - chamberMapItr = theChamberDataMap.insert(pair(chamberId, CSCEventData(chamberType, theFormatVersion))).first; + chamberMapItr = theChamberDataMap.insert(pair(chamberId, CSCEventData(chamberType, formatVersion_))).first; } CSCEventData & cscData = chamberMapItr->second; cscData.dmbHeader()->setCrateAddress(theElectronicsMap->crate(cscDetId), theElectronicsMap->dmb(cscDetId)); - if (theFormatVersion == 2013) + if (formatVersion_ == 2013) { // Set DMB version field to distinguish between ME11s and other chambers (ME11 - 2, others - 1) bool me11 = ((chamberId.station()==1) && (chamberId.ring()==4)) || ((chamberId.station()==1) && (chamberId.ring()==1)); @@ -146,8 +147,8 @@ void CSCDigiToRaw::add(const CSCStripDigiCollection& stripDigis, // only digitize if there are pre-triggers /* !!! Testing. Uncomment for production */ - if (!usePreTriggers || - (usePreTriggers && cscd2r::accept(cscDetId, preTriggers, preTriggerWindowMin_, preTriggerWindowMax_)) ) + if (!usePreTriggers_ || packEverything_ || + (usePreTriggers_ && cscd2r::accept(cscDetId, preTriggers, preTriggerWindowMin_, preTriggerWindowMax_)) ) { bool me1a = (cscDetId.station()==1) && (cscDetId.ring()==4); bool zplus = (cscDetId.endcap() == 1); @@ -161,7 +162,7 @@ void CSCDigiToRaw::add(const CSCStripDigiCollection& stripDigis, { CSCStripDigi digi = *digiItr; int strip = digi.getStrip(); - if (theFormatVersion == 2013) + if (formatVersion_ == 2013) { if ( me1a && zplus ) { @@ -208,7 +209,7 @@ void CSCDigiToRaw::add(const CSCWireDigiCollection& wireDigis, for (CSCWireDigiCollection::DigiRangeIterator j=wireDigis.begin(); j!=wireDigis.end(); ++j) { CSCDetId cscDetId=(*j).first; - if (cscd2r::accept(cscDetId, alctDigis, alctWindowMin_, alctWindowMax_)) + if (packEverything_ || cscd2r::accept(cscDetId, alctDigis, alctWindowMin_, alctWindowMax_)) { CSCEventData & cscData = findEventData(cscDetId); std::vector::const_iterator digiItr = (*j).second.first; @@ -230,14 +231,14 @@ void CSCDigiToRaw::add(const CSCComparatorDigiCollection & comparatorDigis, { CSCDetId cscDetId=(*j).first; CSCEventData & cscData = findEventData(cscDetId); - if (cscd2r::accept(cscDetId, clctDigis, clctWindowMin_, clctWindowMax_)) + if (packEverything_ || cscd2r::accept(cscDetId, clctDigis, clctWindowMin_, clctWindowMax_)) { bool me1a = (cscDetId.station()==1) && (cscDetId.ring()==4); - BOOST_FOREACH(CSCComparatorDigi digi, (*j).second) + BOOST_FOREACH(CSCComparatorDigi digi, (*j).second) { - if (theFormatVersion == 2013) + if (formatVersion_ == 2013) { // Move ME1/A comparators from CFEB=0 to CFEB=4 if this has not // been done already. @@ -320,11 +321,13 @@ void CSCDigiToRaw::createFedBuffers(const CSCStripDigiCollection& stripDigis, const CSCCorrelatedLCTDigiCollection& correlatedLCTDigis, FEDRawDataCollection& fed_buffers, const CSCChamberMap* mapping, - Event & e, uint16_t format_version, bool use_pre_triggers) + Event & e, uint16_t format_version, bool use_pre_triggers, + bool packEverything) { - theFormatVersion = format_version; - usePreTriggers = use_pre_triggers; + formatVersion_ = format_version; + usePreTriggers_ = use_pre_triggers; + packEverything_ = packEverything; //bits of code from ORCA/Muon/METBFormatter - thanks, Rick:)! //get fed object from fed_buffers @@ -339,7 +342,7 @@ void CSCDigiToRaw::createFedBuffers(const CSCStripDigiCollection& stripDigis, int bx = l1a;//same as above //int startingFED = FEDNumbering::MINCSCFEDID; - if (theFormatVersion == 2005) /// Handle pre-LS1 format data + if (formatVersion_ == 2005) /// Handle pre-LS1 format data { std::map dccMap; for (int idcc=FEDNumbering::MINCSCFEDID; @@ -378,7 +381,7 @@ void CSCDigiToRaw::createFedBuffers(const CSCStripDigiCollection& stripDigis, int dduSlot = mapping->dduSlot(chamberItr->first); int dduInput = mapping->dduInput(chamberItr->first); int dmbId = mapping->dmb(chamberItr->first); - dccMapItr->second.addChamber(chamberItr->second, dduId, dduSlot, dduInput, dmbId, theFormatVersion); + dccMapItr->second.addChamber(chamberItr->second, dduId, dduSlot, dduInput, dmbId, formatVersion_); } } } @@ -399,7 +402,7 @@ void CSCDigiToRaw::createFedBuffers(const CSCStripDigiCollection& stripDigis, } } - else if (theFormatVersion == 2013) /// Handle post-LS1 format data + else if (formatVersion_ == 2013) /// Handle post-LS1 format data { std::map dduMap; @@ -461,7 +464,7 @@ void CSCDigiToRaw::createFedBuffers(const CSCStripDigiCollection& stripDigis, int dduInput = mapping->dduInput(chamberItr->first); int dmbId = mapping->dmb(chamberItr->first); // int crateId = mapping->crate(chamberItr->first); - dduMapItr->second.add( chamberItr->second, dmbId, dduInput, theFormatVersion ); + dduMapItr->second.add( chamberItr->second, dmbId, dduInput, formatVersion_ ); } } } diff --git a/EventFilter/CSCRawToDigi/src/CSCDigiToRaw.h b/EventFilter/CSCRawToDigi/src/CSCDigiToRaw.h index a3dabca7737f1..af21d9ee0b543 100644 --- a/EventFilter/CSCRawToDigi/src/CSCDigiToRaw.h +++ b/EventFilter/CSCRawToDigi/src/CSCDigiToRaw.h @@ -37,7 +37,8 @@ class CSCDigiToRaw { const CSCChamberMap* theMapping, edm::Event & e, uint16_t theFormatVersion = 2005, - bool usePreTriggers = true); + bool usePreTriggers = true, + bool packEverything = false); private: void beginEvent(const CSCChamberMap* electronicsMap); @@ -64,9 +65,9 @@ class CSCDigiToRaw { int clctWindowMax_; int preTriggerWindowMin_; int preTriggerWindowMax_; - uint16_t theFormatVersion; - bool usePreTriggers; - + uint16_t formatVersion_; + bool usePreTriggers_; + bool packEverything_; }; diff --git a/EventFilter/CSCRawToDigi/src/CSCDigiToRawModule.h b/EventFilter/CSCRawToDigi/src/CSCDigiToRawModule.h index a81a44c3f3bc7..c1bcc39c86ff6 100644 --- a/EventFilter/CSCRawToDigi/src/CSCDigiToRawModule.h +++ b/EventFilter/CSCRawToDigi/src/CSCDigiToRawModule.h @@ -44,6 +44,7 @@ class CSCDigiToRawModule : public edm::EDProducer { unsigned int theFormatVersion; // Select which version of data format to use Pre-LS1: 2005, Post-LS1: 2013 bool usePreTriggers; // Select if to use Pre-Triigers CLCT digis + bool packEverything_; // bypass all cuts and (pre)trigger requirements CSCDigiToRaw * packer; diff --git a/FWCore/Framework/src/StreamSchedule.cc b/FWCore/Framework/src/StreamSchedule.cc index d69d11a96c0c6..13d475af45979 100644 --- a/FWCore/Framework/src/StreamSchedule.cc +++ b/FWCore/Framework/src/StreamSchedule.cc @@ -581,10 +581,10 @@ namespace edm { fillModuleInPathSummary(Path const& path, size_t which, ModuleInPathSummary& sum) { - sum.timesVisited = +path.timesVisited(which); - sum.timesPassed = +path.timesPassed(which); - sum.timesFailed = +path.timesFailed(which); - sum.timesExcept = +path.timesExcept(which); + sum.timesVisited += path.timesVisited(which); + sum.timesPassed += path.timesPassed(which); + sum.timesFailed += path.timesFailed(which); + sum.timesExcept += path.timesExcept(which); sum.moduleLabel = path.getWorker(which)->description().moduleLabel(); } diff --git a/Fireworks/ParticleFlow/plugins/FWPFCandidateDetailView.cc b/Fireworks/ParticleFlow/plugins/FWPFCandidateDetailView.cc index 79b824b33ff33..e2cc46dfd9cd5 100644 --- a/Fireworks/ParticleFlow/plugins/FWPFCandidateDetailView.cc +++ b/Fireworks/ParticleFlow/plugins/FWPFCandidateDetailView.cc @@ -47,12 +47,6 @@ #include "DataFormats/ParticleFlowReco/interface/PFRecHitFraction.h" -namespace{ - const float kSliderRangeFactor = 0.2; -} - - - FWPFCandidateDetailView::FWPFCandidateDetailView (): m_range(1), m_candidate(0), diff --git a/Fireworks/ParticleFlow/plugins/FWPFPatJetLegoProxyBuilder.h b/Fireworks/ParticleFlow/plugins/FWPFPatJetLegoProxyBuilder.h index 0924a81602f89..42fc594005633 100644 --- a/Fireworks/ParticleFlow/plugins/FWPFPatJetLegoProxyBuilder.h +++ b/Fireworks/ParticleFlow/plugins/FWPFPatJetLegoProxyBuilder.h @@ -1,4 +1,4 @@ -#ifndef _FWPFAPATJETLEGOPROXYBUILDER_H_ +#ifndef _FWPFPATJETLEGOPROXYBUILDER_H_ #define _FWPFPATJETLEGOPROXYBUILDER_H_ // -*- C++ -*- diff --git a/Geometry/CommonDetUnit/src/GeomDet.cc b/Geometry/CommonDetUnit/src/GeomDet.cc index f414c6f317f24..3f4e6d2d6b671 100644 --- a/Geometry/CommonDetUnit/src/GeomDet.cc +++ b/Geometry/CommonDetUnit/src/GeomDet.cc @@ -73,13 +73,13 @@ struct DummyTopology final : public Topology { measurementError( const LocalPoint&, const LocalError& ) const { return MeasurementError();} virtual int channel( const LocalPoint& p) const { return -1;} }; -const DummyTopology dummyTopology; + const DummyTopology dummyTopology{}; struct DummyGeomDetType final : public GeomDetType { DummyGeomDetType() : GeomDetType("", GeomDetEnumerators::invalidDet){} const Topology& topology() const { return dummyTopology;} }; -const DummyGeomDetType dummyGeomDetType; + const DummyGeomDetType dummyGeomDetType{}; } diff --git a/HLTrigger/Configuration/python/HLT_2014_Famos_cff.py b/HLTrigger/Configuration/python/HLT_2014_Famos_cff.py index 23bd36679d4be..1e4ccbd00306a 100644 --- a/HLTrigger/Configuration/python/HLT_2014_Famos_cff.py +++ b/HLTrigger/Configuration/python/HLT_2014_Famos_cff.py @@ -42505,10 +42505,6 @@ HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_L1SingleJet16_v7, HLT_L1SingleJet36_v7, HLT_PFJet40_v9, HLT_PFJet80_v10, HLT_PFJet140_v10, HLT_PFJet200_v10, HLT_PFJet260_v10, HLT_PFJet320_v10, HLT_Jet370_NoJetID_v15, HLT_PFJet400_v10, HLT_MonoCentralPFJet80_PFMETnoMu105_NHEF0p95_v5, HLT_SingleForJet25_v4, HLT_SingleForJet15_v4, HLT_DiPFJetAve40_v10, HLT_DiPFJetAve80_v11, HLT_DiPFJetAve140_v11, HLT_DiPFJetAve200_v11, HLT_DiPFJetAve260_v11, HLT_DiPFJetAve320_v11, HLT_DiPFJetAve400_v11, HLT_FatDiPFJetMass750_DR1p1_Deta1p5_v11, HLT_DoubleJet20_ForwardBackward_v4, HLT_DiJet80_DiJet60_DiJet20_v6, HLT_DiPFJet40_PFMETnoMu65_MJJ800VBF_AllJets_v10, HLT_DiPFJet40_PFMETnoMu65_MJJ600VBF_LeadingJets_v10, HLT_DiJet40Eta2p6_BTagIP3DFastPV_v8, HLT_DiJet80Eta2p6_BTagIP3DFastPVLoose_v8, HLT_Jet60Eta1p7_Jet53Eta1p7_DiBTagIP3DFastPV_v8, HLT_Jet80Eta1p7_Jet70Eta1p7_DiBTagIP3DFastPV_v8, HLT_Jet160Eta2p4_Jet120Eta2p4_DiBTagIP3DFastPVLoose_v8, HLT_QuadJet45_v1, HLT_QuadJet50_v5, HLT_QuadJet60_DiJet20_v6, HLT_QuadJet70_v6, HLT_QuadJet80_v6, HLT_QuadJet90_v6, HLT_QuadJet75_55_35_20_BTagIP_VBF_v9, HLT_QuadJet75_55_38_20_BTagIP_VBF_v9, HLT_QuadJet75_55_35_20_VBF_v2, HLT_QuadPFJet78_61_44_31_BTagCSV_VBF_v7, HLT_QuadPFJet78_61_44_31_VBF_v2, HLT_QuadPFJet82_65_48_35_BTagCSV_VBF_v7, HLT_SixJet35_v6, HLT_SixJet45_v6, HLT_SixJet50_v6, HLT_EightJet30_eta3p0_v5, HLT_EightJet35_eta3p0_v5, HLT_ExclDiJet35_HFOR_v4, HLT_ExclDiJet35_HFAND_v4, HLT_ExclDiJet80_HFAND_v4, HLT_HT200_AlphaT0p57_v8, HLT_HT200_v6, HLT_HT250_AlphaT0p55_v8, HLT_HT250_AlphaT0p57_v8, HLT_HT250_v7, HLT_HT300_AlphaT0p53_v8, HLT_HT300_AlphaT0p54_v14, HLT_HT300_v7, HLT_HT300_DoubleDisplacedPFJet60_v11, HLT_HT300_DoubleDisplacedPFJet60_ChgFraction10_v11, HLT_HT300_SingleDisplacedPFJet60_v11, HLT_HT300_SingleDisplacedPFJet60_ChgFraction10_v11, HLT_HT350_v7, HLT_HT350_AlphaT0p52_v8, HLT_HT350_AlphaT0p53_v19, HLT_HT400_v7, HLT_HT400_AlphaT0p51_v19, HLT_HT400_AlphaT0p52_v14, HLT_HT450_AlphaT0p51_v14, HLT_HT450_v7, HLT_HT500_v7, HLT_HT550_v7, HLT_HT650_v7, HLT_HT650_Track50_dEdx3p6_v11, HLT_HT650_Track60_dEdx3p7_v11, HLT_HT750_v7, HLT_PFNoPUHT350_v5, HLT_PFNoPUHT650_v5, HLT_PFNoPUHT650_DiCentralPFNoPUJet80_CenPFNoPUJet40_v5, HLT_PFNoPUHT700_v5, HLT_PFNoPUHT750_v5, HLT_PFMET150_v8, HLT_PFMET180_v8, HLT_DiCentralJetSumpT100_dPhi05_DiCentralPFJet60_25_PFMET100_HBHENoiseCleaned_v6, HLT_DiCentralPFJet30_PFMET80_v7, HLT_DiCentralPFNoPUJet50_PFMETORPFMETNoMu80_v5, HLT_DiCentralPFJet30_PFMET80_BTagCSV07_v6, HLT_DiPFJet80_DiPFJet30_BTagCSVd07d05d03_v6, HLT_DiPFJet80_DiPFJet30_BTagCSVd07d05d05_v6, HLT_DiPFJet80_DiPFJet30_BTagCSVd07d05_v6, HLT_MET80_v5, HLT_MET80_Parked_v5, HLT_MET80_Track50_dEdx3p6_v7, HLT_MET80_Track60_dEdx3p7_v7, HLT_MET100_HBHENoiseCleaned_v2, HLT_MET120_v13, HLT_MET120_HBHENoiseCleaned_v7, HLT_MET200_v12, HLT_MET200_HBHENoiseCleaned_v6, HLT_MET300_v4, HLT_MET300_HBHENoiseCleaned_v6, HLT_MET400_v7, HLT_MET400_HBHENoiseCleaned_v6, HLT_L1SingleMuOpen_v7, HLT_L1SingleMu12_v2, HLT_L2Mu70_2Cha_eta2p1_PFMET55_v3, HLT_L2Mu70_2Cha_eta2p1_PFMET60_v3, HLT_L2Mu20_eta2p1_NoVertex_v2, HLT_L2TripleMu10_0_0_NoVertex_PFJet40Neutral_v9, HLT_DoubleDisplacedMu4_DiPFJet40Neutral_v9, HLT_Mu5_v21, HLT_Mu8_v19, HLT_Mu12_v19, HLT_Mu17_v6, HLT_Mu12_eta2p1_L1Mu10erJetC12WdEtaPhi1DiJetsC_v8, HLT_Mu15_eta2p1_L1Mu10erJetC12WdEtaPhi1DiJetsC_v4, HLT_Mu15_eta2p1_v6, HLT_Mu24_v17, HLT_Mu24_eta2p1_v6, HLT_Mu30_v17, HLT_Mu30_eta2p1_v6, HLT_Mu40_v15, HLT_Mu40_eta2p1_v12, HLT_Mu50_eta2p1_v9, HLT_RelIso1p0Mu5_v7, HLT_RelIso1p0Mu20_v4, HLT_IsoMu15_eta2p1_L1ETM20_v8, HLT_IsoMu20_eta2p1_v8, HLT_IsoMu24_v18, HLT_IsoMu24_eta2p1_v16, HLT_IsoMu30_v12, HLT_IsoMu30_eta2p1_v16, HLT_IsoMu34_eta2p1_v14, HLT_IsoMu40_eta2p1_v11, HLT_Mu40_eta2p1_Track50_dEdx3p6_v6, HLT_Mu40_eta2p1_Track60_dEdx3p7_v6, HLT_L2DoubleMu23_NoVertex_v11, HLT_L2DoubleMu23_NoVertex_2Cha_Angle2p5_v3, HLT_L2DoubleMu38_NoVertex_2Cha_Angle2p5_v3, HLT_DoubleMu11_Acoplanarity03_v6, HLT_DoubleMu4_Jpsi_Displaced_v13, HLT_DoubleMu4_JpsiTk_Displaced_v8, HLT_DoubleMu3_4_Dimuon5_Bs_Central_v6, HLT_DoubleMu3p5_4_Dimuon5_Bs_Central_v6, HLT_DoubleMu4_Dimuon7_Bs_Forward_v6, HLT_DoubleMu3p5_LowMass_Displaced_v7, HLT_DoubleMu3p5_LowMassNonResonant_Displaced_v7, HLT_Dimuon0_Jpsi_v18, HLT_Dimuon0_Jpsi_NoVertexing_v15, HLT_Dimuon0_Upsilon_v18, HLT_Dimuon0_PsiPrime_v7, HLT_Dimuon5_Upsilon_v7, HLT_Dimuon5_PsiPrime_v7, HLT_Dimuon7_Upsilon_v8, HLT_Dimuon7_PsiPrime_v4, HLT_Dimuon8_Jpsi_v8, HLT_Dimuon8_Upsilon_v7, HLT_Dimuon10_Jpsi_v7, HLT_Dimuon11_Upsilon_v7, HLT_Dimuon0_Jpsi_Muon_v19, HLT_Dimuon0_Upsilon_Muon_v19, HLT_Dimuon3p5_SameSign_v7, HLT_DoubleMu4_Acoplanarity03_v6, HLT_Tau2Mu_ItTrack_v8, HLT_Mu13_Mu8_v23, HLT_Mu17_Mu8_v23, HLT_Mu13_Mu8_NoDZ_v2, HLT_Mu17_TkMu8_v15, HLT_Mu17_TkMu8_NoDZ_v2, HLT_Mu22_TkMu8_v10, HLT_Mu22_TkMu22_v10, HLT_TripleMu5_v20, HLT_DoubleMu5_IsoMu5_v21, HLT_Mu5_L2Mu3_Jpsi_v9, HLT_Mu5_Track2_Jpsi_v22, HLT_Mu5_Track3p5_Jpsi_v8, HLT_Mu7_Track7_Jpsi_v21, HLT_Mu15_TkMu5_Onia_v2, HLT_BTagMu_Jet20_Mu4_v3, HLT_BTagMu_Jet60_Mu4_v3, HLT_Photon20_CaloIdVL_v5, HLT_Photon20_CaloIdVL_IsoL_v17, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_v6, HLT_Photon26_Photon18_v13, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v3, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_v6, HLT_Photon30_v2, HLT_Photon30_CaloIdVL_v15, HLT_Photon30_R9Id90_CaloId_HE10_Iso40_EBOnly_v2, HLT_Photon30_R9Id90_CaloId_HE10_Iso40_EBOnly_Met25_HBHENoiseCleaned_v2, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_v6, HLT_Photon36_Photon22_v7, HLT_Photon36_R9Id85_Photon22_R9Id85_v5, HLT_Photon36_R9Id85_Photon22_CaloId10_Iso50_v7, HLT_Photon36_CaloId10_Iso50_Photon22_R9Id85_v7, HLT_Photon36_CaloId10_Iso50_Photon22_CaloId10_Iso50_v7, HLT_Photon36_R9Id85_OR_CaloId10_Iso50_Photon22_R9Id85_OR_CaloId10_Iso50_v7, HLT_Photon36_R9Id85_OR_CaloId10_Iso50_Photon22_v6, HLT_Photon36_R9Id85_OR_CaloId10_Iso50_Photon10_R9Id85_OR_CaloId10_Iso50_Mass80_v2, HLT_Photon50_CaloIdVL_v11, HLT_Photon50_CaloIdVL_IsoL_v18, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_v6, HLT_Photon60_CaloIdL_MHT70_v12, HLT_Photon60_CaloIdL_HT300_v5, HLT_Photon70_CaloIdXL_PFNoPUHT400_v5, HLT_Photon70_CaloIdXL_PFNoPUHT500_v5, HLT_Photon70_CaloIdXL_PFMET100_v8, HLT_Photon75_CaloIdVL_v14, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_v6, HLT_Photon90_CaloIdVL_v11, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_v6, HLT_DisplacedPhoton65_CaloIdVL_IsoL_PFMET25_v5, HLT_DisplacedPhoton65EBOnly_CaloIdVL_IsoL_PFMET30_v5, HLT_Photon135_v8, HLT_Photon150_v5, HLT_Photon160_v5, HLT_Photon300_NoHE_v6, HLT_DoublePhoton48_HEVT_v10, HLT_DoublePhoton53_HEVT_v4, HLT_DoublePhoton70_v7, HLT_DoublePhoton80_v8, HLT_L1SingleEG5_v6, HLT_L1SingleEG12_v6, HLT_L1DoubleEG3_FwdVeto_v2, HLT_L1ETM30_v2, HLT_L1ETM40_v2, HLT_L1ETM70_v2, HLT_L1ETM100_v2, HLT_Ele8_CaloIdT_TrkIdVL_v6, HLT_Ele8_CaloIdT_TrkIdVL_EG7_v3, HLT_Ele8_CaloIdT_TrkIdVL_Jet30_v8, HLT_Ele8_CaloIdL_CaloIsoVL_v18, HLT_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v16, HLT_Ele17_CaloIdL_CaloIsoVL_v18, HLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v7, HLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v20, HLT_Ele17_CaloIdVT_CaloIsoVT_TrkIdT_TrkIsoVT_Ele8_Mass50_v7, HLT_Ele20_CaloIdVT_CaloIsoVT_TrkIdT_TrkIsoVT_SC4_Mass50_v8, HLT_Ele22_CaloIdL_CaloIsoVL_v7, HLT_Ele27_CaloIdL_CaloIsoVL_TrkIdVL_TrkIsoVL_v12, HLT_Ele27_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele15_CaloIdT_CaloIsoVL_trackless_v9, HLT_Ele27_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_HFT15_v9, HLT_Ele23_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_HFT30_v9, HLT_Ele25_CaloIdVT_CaloIsoVL_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet30_v6, HLT_Ele25_CaloIdVT_CaloIsoVL_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet45_35_25_v4, HLT_Ele25_CaloIdVT_CaloIsoVL_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet50_40_30_v6, HLT_Ele27_WP80_v13, HLT_Ele27_WP80_PFMET_MT50_v9, HLT_Ele30_CaloIdVT_TrkIdT_v7, HLT_Ele32_CaloIdL_CaloIsoVL_TrkIdVL_TrkIsoVL_v12, HLT_Ele32_CaloIdT_CaloIsoT_TrkIdT_TrkIsoT_SC17_Mass50_v7, HLT_Ele80_CaloIdVT_GsfTrkIdT_v3, HLT_Ele90_CaloIdVT_GsfTrkIdT_v3, HLT_DoubleEle8_CaloIdT_TrkIdVL_v13, HLT_DoubleEle33_CaloIdL_v15, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_v8, HLT_DoubleEle33_CaloIdT_v11, HLT_Ele15_Ele8_Ele5_CaloIdL_TrkIdVL_v7, HLT_LooseIsoPFTau35_Trk20_Prong1_v11, HLT_LooseIsoPFTau35_Trk20_Prong1_MET70_v11, HLT_LooseIsoPFTau35_Trk20_Prong1_MET75_v11, HLT_IsoMu15_eta2p1_LooseIsoPFTau35_Trk20_Prong1_L1ETM20_v11, HLT_IsoMu8_eta2p1_LooseIsoPFTau20_L1ETM26_v2, HLT_IsoMu8_eta2p1_LooseIsoPFTau20_v2, HLT_Mu8_eta2p1_LooseIsoPFTau20_L1ETM26_v2, HLT_Ele13_eta2p1_WP90Rho_LooseIsoPFTau20_L1ETM36_v2, HLT_Ele13_eta2p1_WP90NoIso_LooseIsoPFTau20_L1ETM36_v2, HLT_Ele13_eta2p1_WP90Rho_LooseIsoPFTau20_v2, HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Jet30_v6, HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_v5, HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Prong1_v5, HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_v5, HLT_IsoMu18_eta2p1_MediumIsoPFTau25_Trk1_eta2p1_v5, HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Reg_Jet30_v2, HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Reg_v2, HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Prong1_Reg_v2, HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v2, HLT_IsoMu18_eta2p1_MediumIsoPFTau25_Trk1_eta2p1_Reg_v2, HLT_DoubleIsoL2Tau30_eta2p1_v1, HLT_BTagMu_DiJet20_Mu5_v7, HLT_BTagMu_DiJet40_Mu5_v7, HLT_BTagMu_DiJet70_Mu5_v7, HLT_BTagMu_DiJet110_Mu5_v7, HLT_BTagMu_Jet300_Mu5_v7, HLT_Mu7_Ele7_CaloIdT_CaloIsoVL_v8, HLT_Mu8_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v10, HLT_Mu8_DiJet30_v8, HLT_Mu8_TriJet30_v8, HLT_Mu8_QuadJet30_v8, HLT_IsoMu12_DoubleCentralJet65_v5, HLT_Mu15_eta2p1_L1ETM20_v6, HLT_IsoMu18_CentralPFJet30_CentralPFJet25_v2, HLT_IsoMu18_PFJet30_PFJet25_Deta3_v2, HLT_Mu18_CentralPFJet30_CentralPFJet25_v2, HLT_Mu18_PFJet30_PFJet25_Deta3_CentralPFJet25_v2, HLT_IsoMu18_CentralPFJet30_CentralPFJet25_PFMET20_v2, HLT_IsoMu18_PFJet30_PFJet25_Deta3_CentralPFJet25_v2, HLT_Ele24_WP80_CentralPFJet35_CentralPFJet25_v3, HLT_Ele24_WP80_PFJet30_PFJet25_Deta3_v3, HLT_Ele24_WP80_PFJet30_PFJet25_Deta3_CentralPFJet30_v3, HLT_Ele24_WP80_CentralPFJet35_CentralPFJet25_PFMET20_v3, HLT_IsoMu17_eta2p1_CentralPFNoPUJet30_BTagIPIter_v5, HLT_IsoMu17_eta2p1_CentralPFNoPUJet30_v5, HLT_IsoMu17_eta2p1_DiCentralPFNoPUJet30_v5, HLT_IsoMu17_eta2p1_TriCentralPFNoPUJet45_35_25_v3, HLT_IsoMu17_eta2p1_TriCentralPFNoPUJet30_v5, HLT_Mu17_eta2p1_CentralPFNoPUJet30_BTagIPIter_v5, HLT_Mu17_eta2p1_TriCentralPFNoPUJet45_35_25_v3, HLT_IsoMu20_WCandPt80_v5, HLT_Mu17_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v10, HLT_Mu12_eta2p1_DiCentral_40_20_DiBTagIP3D1stTrack_v9, HLT_Mu12_eta2p1_DiCentral_40_20_BTagIP3D1stTrack_v9, HLT_Mu12_eta2p1_DiCentral_40_20_v9, HLT_Mu12_eta2p1_DiCentral_20_v9, HLT_Mu15_eta2p1_DiCentral_40_20_v2, HLT_Mu15_eta2p1_DiCentral_20_v2, HLT_Mu15_eta2p1_TriCentral_40_20_20_DiBTagIP3D1stTrack_v9, HLT_Mu15_eta2p1_TriCentral_40_20_20_BTagIP3D1stTrack_v9, HLT_Mu15_eta2p1_TriCentral_40_20_20_v9, HLT_Mu30_Ele30_CaloIdL_v9, HLT_IsoMu17_eta2p1_DiCentralPFNoPUJet30_PFNoPUHT350_PFMHT40_v4, HLT_IsoMu20_eta2p1_CentralPFJet80_v10, HLT_DoubleRelIso1p0Mu5_Mass8_PFNoPUHT175_v5, HLT_DoubleRelIso1p0Mu5_Mass8_PFNoPUHT225_v5, HLT_DoubleMu8_Mass8_PFNoPUHT175_v5, HLT_DoubleMu8_Mass8_PFNoPUHT225_v5, HLT_RelIso1p0Mu5_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT175_v6, HLT_RelIso1p0Mu5_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT225_v6, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT175_v6, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT225_v6, HLT_PFNoPUHT350_Mu15_PFMET45_v5, HLT_PFNoPUHT350_Mu15_PFMET50_v5, HLT_PFNoPUHT400_Mu5_PFMET45_v5, HLT_PFNoPUHT400_Mu5_PFMET50_v5, HLT_Mu40_PFNoPUHT350_v5, HLT_Mu60_PFNoPUHT350_v5, HLT_DoubleMu5_Ele8_CaloIdT_TrkIdVL_v17, HLT_DoubleMu8_Ele8_CaloIdT_TrkIdVL_v6, HLT_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Jet30_v8, HLT_Ele8_CaloIdT_TrkIdT_DiJet30_v19, HLT_Ele8_CaloIdT_TrkIdT_TriJet30_v19, HLT_Ele8_CaloIdT_TrkIdT_QuadJet30_v19, HLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Jet30_v8, HLT_Ele25_CaloIdVT_CaloIsoT_TrkIdT_TrkIsoT_CentralPFNoPUJet30_v10, HLT_Ele25_CaloIdVT_CaloIsoVL_TrkIdVL_TrkIsoT_DiCentralPFNoPUJet30_v4, HLT_Ele25_CaloIdVT_CaloIsoT_TrkIdT_TrkIsoT_CentralPFNoPUJet30_BTagIPIter_v11, HLT_Ele27_WP80_CentralPFJet80_v11, HLT_Ele27_WP80_WCandPt80_v11, HLT_Ele30_CaloIdVT_TrkIdT_PFNoPUJet100_PFNoPUJet25_v9, HLT_Ele30_CaloIdVT_TrkIdT_PFNoPUJet150_PFNoPUJet25_v9, HLT_DoubleEle8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT175_v5, HLT_DoubleEle8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT225_v5, HLT_DoubleEle10_CaloIdL_TrkIdVL_Ele10_CaloIdT_TrkIdVL_v13, HLT_TripleEle10_CaloIdL_TrkIdVL_v19, HLT_RsqMR40_Rsq0p04_v6, HLT_RsqMR45_Rsq0p09_v5, HLT_RsqMR55_Rsq0p09_MR150_v6, HLT_RsqMR60_Rsq0p09_MR150_v6, HLT_RsqMR65_Rsq0p09_MR150_v5, HLT_IsoMu12_RsqMR30_Rsq0p04_MR200_v5, HLT_IsoMu12_RsqMR40_Rsq0p04_MR200_v5, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_RsqMR30_Rsq0p04_MR200_v5, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_RsqMR40_Rsq0p04_MR200_v5, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_DoubleCentralJet65_v5, HLT_Photon40_CaloIdL_RsqMR40_Rsq0p09_MR150_v7, HLT_Photon40_CaloIdL_RsqMR45_Rsq0p09_MR150_v7, HLT_Photon40_CaloIdL_RsqMR50_Rsq0p09_MR150_v7, HLT_DoublePhoton40_CaloIdL_Rsq0p035_v7, HLT_DoublePhoton40_CaloIdL_Rsq0p06_v7, HLT_Mu22_Photon22_CaloIdL_v8, HLT_Mu8_DoubleEle8_CaloIdT_TrkIdVL_v8, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Ele8_CaloIdL_TrkIdVL_v8, HLT_DoubleMu14_Mass8_PFMET40_v9, HLT_DoubleMu14_Mass8_PFMET50_v9, HLT_DoubleEle14_CaloIdT_TrkIdVL_Mass8_PFMET40_v9, HLT_DoubleEle14_CaloIdT_TrkIdVL_Mass8_PFMET50_v9, HLT_Mu14_Ele14_CaloIdT_TrkIdVL_Mass8_PFMET40_v9, HLT_Mu14_Ele14_CaloIdT_TrkIdVL_Mass8_PFMET50_v9, HLT_PFNoPUHT350_PFMET100_v5, HLT_PFNoPUHT400_PFMET100_v5, HLT_CleanPFNoPUHT350_Ele5_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET45_v4, HLT_CleanPFNoPUHT350_Ele5_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET50_v4, HLT_CleanPFNoPUHT300_Ele15_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET45_v4, HLT_CleanPFNoPUHT300_Ele15_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET50_v4, HLT_CleanPFNoPUHT300_Ele40_CaloIdVT_TrkIdT_v4, HLT_CleanPFNoPUHT300_Ele60_CaloIdVT_TrkIdT_v4, HLT_Ele5_SC5_Jpsi_Mass2to15_v6, HLT_DiJet20_MJJ650_AllJets_DEta3p5_HT120_VBF_v1, HLT_DiJet30_MJJ700_AllJets_DEta3p5_VBF_v1, HLT_DiJet35_MJJ650_AllJets_DEta3p5_VBF_v5, HLT_DiJet35_MJJ700_AllJets_DEta3p5_VBF_v5, HLT_DiJet35_MJJ750_AllJets_DEta3p5_VBF_v5, HLT_Ele22_eta2p1_WP90Rho_LooseIsoPFTau20_v8, HLT_Ele22_eta2p1_WP90NoIso_LooseIsoPFTau20_v8, HLT_IsoMu17_eta2p1_LooseIsoPFTau20_v8, HLT_Mu17_eta2p1_LooseIsoPFTau20_v8, DST_HT250_v5, DST_L1HTT_Or_L1MultiJet_v4, DST_Mu5_HT250_v5, DST_Ele8_CaloIdL_CaloIsoVL_TrkIdVL_TrkIsoVL_HT250_v6, HLT_L1Tech_CASTOR_HaloMuon_v4, HLT_L1Tech_DT_GlobalOR_v4, HLT_L1Tech_HBHEHO_totalOR_v6, HLT_L1Tech_HCAL_HF_single_channel_v4, HLT_ZeroBias_v7, HLT_ZeroBias_Parked_v1, HLT_ZeroBiasPixel_DoubleTrack_v2, HLT_Physics_v5, HLT_Physics_Parked_v1, DST_Physics_v5, HLT_L1DoubleJet36Central_v7, HLT_PFJet360_v1, HLT_Jet420_NoJetID_v1, HLT_PFJet450_v1, HLT_MonoCentralPFJet150_PFMETnoMu105_NHEF0p95_v1, HLT_DiPFJetAve450_v1, HLT_FatDiPFJetMass850_DR1p1_Deta1p5_v1, HLT_DiJet80_DiJet60_DiJet30_v1, HLT_DiPFJet40_PFMETnoMu75_MJJ800VBF_AllJets_v1, HLT_DiPFJet40_PFMETnoMu75_MJJ600VBF_LeadingJets_v1, HLT_DiJet110Eta2p6_BTagIP3DFastPVLoose_v1, HLT_Jet100Eta1p7_Jet85Eta1p7_DiBTagIP3DFastPV_v1, HLT_Jet190Eta2p4_Jet145Eta2p4_DiBTagIP3DFastPVLoose_v1, HLT_QuadJet60_DiJet30_v1, HLT_QuadJet100_v1, HLT_QuadJet90_65_45_25_BTagIP_VBF_v1, HLT_QuadPFJet95_75_55_40_BTagCSV_VBF_v1, HLT_SixJet55_v1, HLT_EightJet40_eta3p0_v1, HLT_HT285_AlphaT0p55_v1, HLT_HT290_AlphaT0p57_v1, HLT_HT340_AlphaT0p53_v1, HLT_HT340_AlphaT0p54_v1, HLT_HT360_DoubleDisplacedPFJet60_v1, HLT_HT385_AlphaT0p52_v1, HLT_HT380_AlphaT0p53_v1, HLT_HT440_AlphaT0p51_v1, HLT_HT445_AlphaT0p52_v1, HLT_HT500_AlphaT0p51_v1, HLT_HT820_Track50_dEdx3p6_v1, HLT_HT820_Track60_dEdx3p7_v1, HLT_HT850_v1, HLT_PFNoPUHT735_v1, HLT_PFNoPUHT735_DiCentralPFNoPUJet80_CenPFNoPUJet40_v1, HLT_PFNoPUHT800_v1, HLT_PFNoPUHT850_v1, HLT_PFMET200_v1, HLT_PFMET230_v1, HLT_DiCentralJetSumpT100_dPhi05_DiCentralPFJet60_25_PFMET120_HBHENoiseCleaned_v1, HLT_DiCentralPFNoPUJet50_PFMETORPFMETNoMu100_v1, HLT_DiCentralPFJet30_PFMET90_BTagCSV07_v1, HLT_DiPFJet95_DiPFJet35_BTagCSVd07d05d03_v1, HLT_DiPFJet95_DiPFJet35_BTagCSVd07d05d05_v1, HLT_DiPFJet95_DiPFJet35_BTagCSVd07d05_v1, HLT_MET85_Track50_dEdx3p6_v1, HLT_MET85_Track60_dEdx3p7_v1, HLT_MET140_HBHENoiseCleaned_v1, HLT_MET250_v1, HLT_MET230_HBHENoiseCleaned_v1, HLT_MET375_v1, HLT_MET500_HBHENoiseCleaned_v1, HLT_MET500_v1, HLT_L2Mu75_2Cha_eta2p1_PFMET60_v1, HLT_L2Mu75_2Cha_eta2p1_PFMET65_v1, HLT_L2TripleMu17_4_4_NoVertex_PFJet40Neutral_v1, HLT_DoubleDisplacedMu6_DiPFJet40Neutral_v1, HLT_Mu47_v1, HLT_Mu47_eta2p1_v1, HLT_Mu60_eta2p1_v1, HLT_IsoMu25_eta2p1_L1ETM20_v1, HLT_IsoMu34_v1, HLT_IsoMu38_v1, HLT_IsoMu38_eta2p1_v1, HLT_IsoMu47_eta2p1_v1, HLT_Mu40_eta2p1_Track60_dEdx3p6_v1, HLT_Mu40_eta2p1_Track70_dEdx3p7_v1, HLT_L2DoubleMu48_NoVertex_2Cha_Angle2p5_v1, HLT_DoubleMu20_Acoplanarity03_v1, HLT_Mu23_Mu10_v1, HLT_Mu23_TkMu10_v1, HLT_Mu23_TkMu10_NoDZ_v1, HLT_Mu30_TkMu10_v1, HLT_Mu30_TkMu30_v1, HLT_TripleMu6_v1, HLT_DoubleMu6_IsoMu6_v1, HLT_Photon34_R9Id85_OR_CaloId10_Iso50_Photon24_R9Id85_OR_CaloId10_Iso50_Mass70_v1, HLT_Photon42_R9Id85_Photon28_R9Id85_v1, HLT_Photon42_R9Id85_Photon28_CaloId10_Iso50_v1, HLT_Photon42_CaloId10_Iso50_Photon28_R9Id85_v1, HLT_Photon42_CaloId10_Iso50_Photon28_CaloId10_Iso50_v1, HLT_Photon42_R9Id85_OR_CaloId10_Iso50_Photon28_R9Id85_OR_CaloId10_Iso50_v1, HLT_Photon42_R9Id85_OR_CaloId10_Iso50_Photon15_R9Id85_OR_CaloId10_Iso50_Mass80_v1, HLT_Photon70_CaloIdXL_PFNoPUHT470_v1, HLT_Photon70_CaloIdXL_PFNoPUHT580_v1, HLT_Photon110_CaloIdXL_PFMET100_v1, HLT_DisplacedPhoton70_CaloIdVL_IsoL_PFMET30_v1, HLT_DisplacedPhoton70EBOnly_CaloIdVL_IsoL_PFMET35_v1, HLT_Photon155_v1, HLT_Photon175_v1, HLT_Photon185_v1, HLT_Photon330_NoHE_v1, HLT_DoublePhoton56_HEVT_v1, HLT_DoublePhoton61_HEVT_v1, HLT_DoublePhoton92_v1, HLT_Ele30_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele27_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v1, HLT_Ele38_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele20_CaloIdT_CaloIsoVL_trackless_v1, HLT_Ele38_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_HFT20_v1, HLT_Ele30_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_HFT35_v1, HLT_Ele28_CaloIdVT_CaloIsoT_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet40_v1, HLT_Ele28_CaloIdVT_CaloIsoT_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet60_40_25_v1, HLT_Ele28_CaloIdVT_CaloIsoT_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet65_45_30_v1, HLT_Ele36_WP80_v1, HLT_Ele36_WP80_PFMET_MT60_v1, HLT_Ele100_CaloIdVT_GsfTrkIdT_v1, HLT_Ele115_CaloIdVT_GsfTrkIdT_v1, HLT_DoubleEle40_CaloIdL_GsfTrkIdVL_v1, HLT_DoubleEle40_CaloIdT_v1, HLT_Ele18_Ele12_Ele10_CaloIdL_TrkIdVL_v1, HLT_LooseIsoPFTau50_Trk20_Prong1_v1, HLT_LooseIsoPFTau50_Trk20_Prong1_MET75_v1, HLT_LooseIsoPFTau50_Trk20_Prong1_MET80_v1, HLT_IsoMu25_eta2p1_LooseIsoPFTau35_Trk45_Prong1_L1ETM20_v1, HLT_IsoMu8_eta2p1_LooseIsoPFTau40_L1ETM26_v1, HLT_IsoMu8_eta2p1_LooseIsoPFTau40_v1, HLT_Ele25_eta2p1_WP90Rho_LooseIsoPFTau45_L1ETM36_v1, HLT_Ele25_eta2p1_WP90Rho_LooseIsoPFTau45_v1, HLT_DoubleMediumIsoPFTau45_Trk1_eta2p1_Reg_Jet30_v1, HLT_DoubleMediumIsoPFTau50_Trk1_eta2p1_Prong1_Reg_v1, HLT_IsoMu26_eta2p1_MediumIsoPFTau30_Trk1_eta2p1_Reg_v1, HLT_BTagMu_Jet375_Mu5_v1, HLT_Mu10_Ele20_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v1, HLT_Mu8_QuadJet42_v1, HLT_IsoMu22_CentralPFJet35_CentralPFJet30_v1, HLT_IsoMu22_PFJet33_PFJet28_Deta3_v1, HLT_IsoMu22_CentralPFJet35_CentralPFJet30_PFMET22_v1, HLT_IsoMu22_PFJet33_PFJet28_Deta3_CentralPFJet25_v1, HLT_Ele36_WP80_CentralPFJet40_CentralPFJet30_v1, HLT_Ele36_WP80_PFJet35_PFJet30_Deta3_v1, HLT_Ele36_WP80_PFJet35_PFJet30_Deta3_CentralPFJet35_v1, HLT_Ele36_WP80_CentralPFJet40_CentralPFJet30_PFMET25_v1, HLT_IsoMu20_eta2p1_CentralPFNoPUJet40_BTagIPIter_v1, HLT_IsoMu20_eta2p1_TriCentralPFNoPUJet60_40_25_v1, HLT_IsoMu20_eta2p1_TriCentralPFNoPUJet35_v1, HLT_IsoMu25_WCandPt90_v1, HLT_Mu20_Ele10_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v1, HLT_Mu15_eta2p1_DiCentral_50_20_DiBTagIP3D1stTrack_v1, HLT_Mu18_eta2p1_TriCentral_50_20_20_DiBTagIP3D1stTrack_v1, HLT_Mu36_Ele36_CaloIdL_v1, HLT_IsoMu17_eta2p1_DiCentralPFNoPUJet30_PFNoPUHT410_PFMHT40_v1, HLT_IsoMu25_eta2p1_CentralPFJet90_v1, HLT_DoubleRelIso1p0Mu5_Mass8_PFNoPUHT300_v1, HLT_DoubleRelIso1p0Mu5_Mass8_PFNoPUHT325_v1, HLT_DoubleMu8_Mass8_PFNoPUHT300_v1, HLT_DoubleMu8_Mass8_PFNoPUHT340_v1, HLT_RelIso1p0Mu5_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT300_v1, HLT_RelIso1p0Mu5_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT325_v1, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT300_v1, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT325_v1, HLT_PFNoPUHT400_Mu15_PFMET50_v1, HLT_PFNoPUHT400_Mu15_PFMET55_v1, HLT_PFNoPUHT450_Mu5_PFMET50_v1, HLT_PFNoPUHT450_Mu5_PFMET55_v1, HLT_Mu40_PFNoPUHT410_v1, HLT_Mu60_PFNoPUHT470_v1, HLT_DoubleMu8_Ele10_CaloIdT_TrkIdVL_v1, HLT_DoubleMu10_Ele10_CaloIdT_TrkIdVL_v1, HLT_Ele36_CaloIdVT_CaloIsoT_TrkIdT_TrkIsoT_CentralPFNoPUJet50_BTagIPIter_v1, HLT_Ele36_WP80_CentralPFJet95_v1, HLT_Ele36_WP80_WCandPt108_v1, HLT_Ele30_CaloIdVT_TrkIdT_PFNoPUJet125_PFNoPUJet25_v1, HLT_Ele30_CaloIdVT_TrkIdT_PFNoPUJet180_PFNoPUJet25_v1, HLT_DoubleEle8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT325_v1, HLT_DoubleEle13_CaloIdL_TrkIdVL_Ele13_CaloIdT_TrkIdVL_v1, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_RsqMR35_Rsq0p04_MR200_v1, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_RsqMR47_Rsq0p04_MR200_v1, HLT_TripleEle13_CaloIdL_TrkIdVL_v1, HLT_Photon40_CaloIdL_RsqMR55_Rsq0p09_MR150_v1, HLT_DoublePhoton46_CaloIdL_Rsq0p035_v1, HLT_DoublePhoton46_CaloIdL_Rsq0p06_v1, HLT_Mu26_Photon26_CaloIdL_v1, HLT_Mu10_DoubleEle10_CaloIdT_TrkIdVL_v1, HLT_Mu10_Ele10_CaloIdT_TrkIdVL_Ele10_CaloIdL_TrkIdVL_v1, HLT_DoubleMu14_Mass8_PFMET60_v1, HLT_DoubleEle14_CaloIdT_TrkIdVL_Mass8_PFMET55_v1, HLT_Mu14_Ele14_CaloIdT_TrkIdVL_Mass8_PFMET60_v1, HLT_PFNoPUHT405_PFMET100_v1, HLT_PFNoPUHT450_PFMET100_v1, HLT_CleanPFNoPUHT400_Ele8_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET50_v1, HLT_CleanPFNoPUHT400_Ele8_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET60_v1, HLT_CleanPFNoPUHT350_Ele18_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET50_v1, HLT_CleanPFNoPUHT350_Ele18_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET60_v1, HLT_CleanPFNoPUHT300_Ele55_CaloIdVT_TrkIdT_v1, HLT_CleanPFNoPUHT300_Ele85_CaloIdVT_TrkIdT_v1, HLT_Ele30_eta2p1_WP90Rho_LooseIsoPFTau45_v1, HLT_IsoMu30_eta2p1_LooseIsoPFTau45_v1, HLT_IsoMu17_eta2p1_DiCentralPFNoPUJet30_PFNoPUHT350_PFMHT60_v1, HLT_LogMonitor_v4, HLTriggerFinalPath )) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in locals(): - hltHfreco.setNoiseFlags = cms.bool( True ) - # CMSSW version specific customizations import os cmsswVersion = os.environ['CMSSW_VERSION'] diff --git a/HLTrigger/Configuration/python/HLT_2014_cff.py b/HLTrigger/Configuration/python/HLT_2014_cff.py index b97f739335848..babd3c276d188 100644 --- a/HLTrigger/Configuration/python/HLT_2014_cff.py +++ b/HLTrigger/Configuration/python/HLT_2014_cff.py @@ -51934,10 +51934,6 @@ HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Activity_Ecal_SC7_v14, HLT_L1SingleJet16_v7, HLT_L1SingleJet36_v7, HLT_PFJet40_v9, HLT_PFJet80_v10, HLT_PFJet140_v10, HLT_PFJet200_v10, HLT_PFJet260_v10, HLT_PFJet320_v10, HLT_Jet370_NoJetID_v15, HLT_PFJet400_v10, HLT_MonoCentralPFJet80_PFMETnoMu105_NHEF0p95_v5, HLT_SingleForJet25_v4, HLT_SingleForJet15_v4, HLT_DiPFJetAve40_v10, HLT_DiPFJetAve80_v11, HLT_DiPFJetAve140_v11, HLT_DiPFJetAve200_v11, HLT_DiPFJetAve260_v11, HLT_DiPFJetAve320_v11, HLT_DiPFJetAve400_v11, HLT_FatDiPFJetMass750_DR1p1_Deta1p5_v11, HLT_DoubleJet20_ForwardBackward_v4, HLT_DiJet80_DiJet60_DiJet20_v6, HLT_DiPFJet40_PFMETnoMu65_MJJ800VBF_AllJets_v10, HLT_DiPFJet40_PFMETnoMu65_MJJ600VBF_LeadingJets_v10, HLT_DiJet40Eta2p6_BTagIP3DFastPV_v8, HLT_DiJet80Eta2p6_BTagIP3DFastPVLoose_v8, HLT_Jet60Eta1p7_Jet53Eta1p7_DiBTagIP3DFastPV_v8, HLT_Jet80Eta1p7_Jet70Eta1p7_DiBTagIP3DFastPV_v8, HLT_Jet160Eta2p4_Jet120Eta2p4_DiBTagIP3DFastPVLoose_v8, HLT_QuadJet45_v1, HLT_QuadJet50_v5, HLT_QuadJet60_DiJet20_v6, HLT_QuadJet70_v6, HLT_QuadJet80_v6, HLT_QuadJet90_v6, HLT_QuadJet75_55_35_20_BTagIP_VBF_v9, HLT_QuadJet75_55_38_20_BTagIP_VBF_v9, HLT_QuadJet75_55_35_20_VBF_v2, HLT_QuadPFJet78_61_44_31_BTagCSV_VBF_v7, HLT_QuadPFJet78_61_44_31_VBF_v2, HLT_QuadPFJet82_65_48_35_BTagCSV_VBF_v7, HLT_SixJet35_v6, HLT_SixJet45_v6, HLT_SixJet50_v6, HLT_EightJet30_eta3p0_v5, HLT_EightJet35_eta3p0_v5, HLT_ExclDiJet35_HFOR_v4, HLT_ExclDiJet35_HFAND_v4, HLT_ExclDiJet80_HFAND_v4, HLT_JetE30_NoBPTX_v14, HLT_JetE30_NoBPTX3BX_NoHalo_v16, HLT_JetE50_NoBPTX3BX_NoHalo_v13, HLT_JetE70_NoBPTX3BX_NoHalo_v5, HLT_HT200_AlphaT0p57_v8, HLT_HT200_v6, HLT_HT250_AlphaT0p55_v8, HLT_HT250_AlphaT0p57_v8, HLT_HT250_v7, HLT_HT300_AlphaT0p53_v8, HLT_HT300_AlphaT0p54_v14, HLT_HT300_v7, HLT_HT300_DoubleDisplacedPFJet60_v11, HLT_HT300_DoubleDisplacedPFJet60_ChgFraction10_v11, HLT_HT300_SingleDisplacedPFJet60_v11, HLT_HT300_SingleDisplacedPFJet60_ChgFraction10_v11, HLT_HT350_v7, HLT_HT350_AlphaT0p52_v8, HLT_HT350_AlphaT0p53_v19, HLT_HT400_v7, HLT_HT400_AlphaT0p51_v19, HLT_HT400_AlphaT0p52_v14, HLT_HT450_AlphaT0p51_v14, HLT_HT450_v7, HLT_HT500_v7, HLT_HT550_v7, HLT_HT650_v7, HLT_HT650_Track50_dEdx3p6_v11, HLT_HT650_Track60_dEdx3p7_v11, HLT_HT750_v7, HLT_PFNoPUHT350_v5, HLT_PFNoPUHT650_v5, HLT_PFNoPUHT650_DiCentralPFNoPUJet80_CenPFNoPUJet40_v5, HLT_PFNoPUHT700_v5, HLT_PFNoPUHT750_v5, HLT_PFMET150_v8, HLT_PFMET180_v8, HLT_DiCentralJetSumpT100_dPhi05_DiCentralPFJet60_25_PFMET100_HBHENoiseCleaned_v6, HLT_DiCentralPFJet30_PFMET80_v7, HLT_DiCentralPFNoPUJet50_PFMETORPFMETNoMu80_v5, HLT_DiCentralPFJet30_PFMET80_BTagCSV07_v6, HLT_DiPFJet80_DiPFJet30_BTagCSVd07d05d03_v6, HLT_DiPFJet80_DiPFJet30_BTagCSVd07d05d05_v6, HLT_DiPFJet80_DiPFJet30_BTagCSVd07d05_v6, HLT_MET80_v5, HLT_MET80_Parked_v5, HLT_MET80_Track50_dEdx3p6_v7, HLT_MET80_Track60_dEdx3p7_v7, HLT_MET100_HBHENoiseCleaned_v2, HLT_MET120_v13, HLT_MET120_HBHENoiseCleaned_v7, HLT_MET200_v12, HLT_MET200_HBHENoiseCleaned_v6, HLT_MET300_v4, HLT_MET300_HBHENoiseCleaned_v6, HLT_MET400_v7, HLT_MET400_HBHENoiseCleaned_v6, HLT_L1SingleMuOpen_v7, HLT_L1SingleMu12_v2, HLT_L2Mu70_2Cha_eta2p1_PFMET55_v3, HLT_L2Mu70_2Cha_eta2p1_PFMET60_v3, HLT_L2Mu10_NoVertex_NoBPTX3BX_NoHalo_v4, HLT_L2Mu20_eta2p1_NoVertex_v2, HLT_L2Mu20_NoVertex_2Cha_NoBPTX3BX_NoHalo_v1, HLT_L2Mu30_NoVertex_2Cha_NoBPTX3BX_NoHalo_v1, HLT_L2TripleMu10_0_0_NoVertex_PFJet40Neutral_v9, HLT_DoubleDisplacedMu4_DiPFJet40Neutral_v9, HLT_Mu5_v21, HLT_Mu8_v19, HLT_Mu12_v19, HLT_Mu17_v6, HLT_Mu12_eta2p1_L1Mu10erJetC12WdEtaPhi1DiJetsC_v8, HLT_Mu15_eta2p1_L1Mu10erJetC12WdEtaPhi1DiJetsC_v4, HLT_Mu15_eta2p1_v6, HLT_Mu24_v17, HLT_Mu24_eta2p1_v6, HLT_Mu30_v17, HLT_Mu30_eta2p1_v6, HLT_Mu40_v15, HLT_Mu40_eta2p1_v12, HLT_Mu50_eta2p1_v9, HLT_RelIso1p0Mu5_v7, HLT_RelIso1p0Mu20_v4, HLT_IsoMu15_eta2p1_L1ETM20_v8, HLT_IsoMu20_eta2p1_v8, HLT_IsoMu24_v18, HLT_IsoMu24_eta2p1_v16, HLT_IsoMu30_v12, HLT_IsoMu30_eta2p1_v16, HLT_IsoMu34_eta2p1_v14, HLT_IsoMu40_eta2p1_v11, HLT_Mu40_eta2p1_Track50_dEdx3p6_v6, HLT_Mu40_eta2p1_Track60_dEdx3p7_v6, HLT_L2DoubleMu23_NoVertex_v11, HLT_L2DoubleMu23_NoVertex_2Cha_Angle2p5_v3, HLT_L2DoubleMu38_NoVertex_2Cha_Angle2p5_v3, HLT_DoubleMu11_Acoplanarity03_v6, HLT_DoubleMu4_Jpsi_Displaced_v13, HLT_DoubleMu4_JpsiTk_Displaced_v8, HLT_DoubleMu3_4_Dimuon5_Bs_Central_v6, HLT_DoubleMu3p5_4_Dimuon5_Bs_Central_v6, HLT_DoubleMu4_Dimuon7_Bs_Forward_v6, HLT_DoubleMu3p5_LowMass_Displaced_v7, HLT_DoubleMu3p5_LowMassNonResonant_Displaced_v7, HLT_Dimuon0_Jpsi_v18, HLT_Dimuon0_Jpsi_NoVertexing_v15, HLT_Dimuon0_Upsilon_v18, HLT_Dimuon0_PsiPrime_v7, HLT_Dimuon5_Upsilon_v7, HLT_Dimuon5_PsiPrime_v7, HLT_Dimuon7_Upsilon_v8, HLT_Dimuon7_PsiPrime_v4, HLT_Dimuon8_Jpsi_v8, HLT_Dimuon8_Upsilon_v7, HLT_Dimuon10_Jpsi_v7, HLT_Dimuon11_Upsilon_v7, HLT_Dimuon0_Jpsi_Muon_v19, HLT_Dimuon0_Upsilon_Muon_v19, HLT_Dimuon3p5_SameSign_v7, HLT_DoubleMu4_Acoplanarity03_v6, HLT_Tau2Mu_ItTrack_v8, HLT_Mu13_Mu8_v23, HLT_Mu17_Mu8_v23, HLT_Mu13_Mu8_NoDZ_v2, HLT_Mu17_TkMu8_v15, HLT_Mu17_TkMu8_NoDZ_v2, HLT_Mu22_TkMu8_v10, HLT_Mu22_TkMu22_v10, HLT_TripleMu5_v20, HLT_DoubleMu5_IsoMu5_v21, HLT_Mu5_L2Mu3_Jpsi_v9, HLT_Mu5_Track2_Jpsi_v22, HLT_Mu5_Track3p5_Jpsi_v8, HLT_Mu7_Track7_Jpsi_v21, HLT_Mu15_TkMu5_Onia_v2, HLT_BTagMu_Jet20_Mu4_v3, HLT_BTagMu_Jet60_Mu4_v3, HLT_Photon20_CaloIdVL_v5, HLT_Photon20_CaloIdVL_IsoL_v17, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_v6, HLT_Photon26_Photon18_v13, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v3, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_v6, HLT_Photon30_v2, HLT_Photon30_CaloIdVL_v15, HLT_Photon30_R9Id90_CaloId_HE10_Iso40_EBOnly_v2, HLT_Photon30_R9Id90_CaloId_HE10_Iso40_EBOnly_Met25_HBHENoiseCleaned_v2, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_v6, HLT_Photon36_Photon22_v7, HLT_Photon36_R9Id85_Photon22_R9Id85_v5, HLT_Photon36_R9Id85_Photon22_CaloId10_Iso50_v7, HLT_Photon36_CaloId10_Iso50_Photon22_R9Id85_v7, HLT_Photon36_CaloId10_Iso50_Photon22_CaloId10_Iso50_v7, HLT_Photon36_R9Id85_OR_CaloId10_Iso50_Photon22_R9Id85_OR_CaloId10_Iso50_v7, HLT_Photon36_R9Id85_OR_CaloId10_Iso50_Photon22_v6, HLT_Photon36_R9Id85_OR_CaloId10_Iso50_Photon10_R9Id85_OR_CaloId10_Iso50_Mass80_v2, HLT_Photon50_CaloIdVL_v11, HLT_Photon50_CaloIdVL_IsoL_v18, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_v6, HLT_Photon60_CaloIdL_MHT70_v12, HLT_Photon60_CaloIdL_HT300_v5, HLT_Photon70_CaloIdXL_PFNoPUHT400_v5, HLT_Photon70_CaloIdXL_PFNoPUHT500_v5, HLT_Photon70_CaloIdXL_PFMET100_v8, HLT_Photon75_CaloIdVL_v14, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_v6, HLT_Photon90_CaloIdVL_v11, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_v6, HLT_DisplacedPhoton65_CaloIdVL_IsoL_PFMET25_v5, HLT_DisplacedPhoton65EBOnly_CaloIdVL_IsoL_PFMET30_v5, HLT_Photon135_v8, HLT_Photon150_v5, HLT_Photon160_v5, HLT_Photon300_NoHE_v6, HLT_DoublePhoton48_HEVT_v10, HLT_DoublePhoton53_HEVT_v4, HLT_DoublePhoton70_v7, HLT_DoublePhoton80_v8, HLT_L1SingleEG5_v6, HLT_L1SingleEG12_v6, HLT_L1DoubleEG3_FwdVeto_v2, HLT_L1ETM30_v2, HLT_L1ETM40_v2, HLT_L1ETM70_v2, HLT_L1ETM100_v2, HLT_Ele8_CaloIdT_TrkIdVL_v6, HLT_Ele8_CaloIdT_TrkIdVL_EG7_v3, HLT_Ele8_CaloIdT_TrkIdVL_Jet30_v8, HLT_Ele8_CaloIdL_CaloIsoVL_v18, HLT_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v16, HLT_Ele17_CaloIdL_CaloIsoVL_v18, HLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v7, HLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v20, HLT_Ele17_CaloIdVT_CaloIsoVT_TrkIdT_TrkIsoVT_Ele8_Mass50_v7, HLT_Ele20_CaloIdVT_CaloIsoVT_TrkIdT_TrkIsoVT_SC4_Mass50_v8, HLT_Ele22_CaloIdL_CaloIsoVL_v7, HLT_Ele27_CaloIdL_CaloIsoVL_TrkIdVL_TrkIsoVL_v12, HLT_Ele27_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele15_CaloIdT_CaloIsoVL_trackless_v9, HLT_Ele27_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_HFT15_v9, HLT_Ele23_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_HFT30_v9, HLT_Ele25_CaloIdVT_CaloIsoVL_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet30_v6, HLT_Ele25_CaloIdVT_CaloIsoVL_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet45_35_25_v4, HLT_Ele25_CaloIdVT_CaloIsoVL_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet50_40_30_v6, HLT_Ele27_WP80_v13, HLT_Ele27_WP80_PFMET_MT50_v9, HLT_Ele30_CaloIdVT_TrkIdT_v7, HLT_Ele32_CaloIdL_CaloIsoVL_TrkIdVL_TrkIsoVL_v12, HLT_Ele32_CaloIdT_CaloIsoT_TrkIdT_TrkIsoT_SC17_Mass50_v7, HLT_Ele80_CaloIdVT_GsfTrkIdT_v3, HLT_Ele90_CaloIdVT_GsfTrkIdT_v3, HLT_DoubleEle8_CaloIdT_TrkIdVL_v13, HLT_DoubleEle33_CaloIdL_v15, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_v8, HLT_DoubleEle33_CaloIdT_v11, HLT_Ele15_Ele8_Ele5_CaloIdL_TrkIdVL_v7, HLT_LooseIsoPFTau35_Trk20_Prong1_v11, HLT_LooseIsoPFTau35_Trk20_Prong1_MET70_v11, HLT_LooseIsoPFTau35_Trk20_Prong1_MET75_v11, HLT_IsoMu15_eta2p1_LooseIsoPFTau35_Trk20_Prong1_L1ETM20_v11, HLT_IsoMu8_eta2p1_LooseIsoPFTau20_L1ETM26_v2, HLT_IsoMu8_eta2p1_LooseIsoPFTau20_v2, HLT_Mu8_eta2p1_LooseIsoPFTau20_L1ETM26_v2, HLT_Ele13_eta2p1_WP90Rho_LooseIsoPFTau20_L1ETM36_v2, HLT_Ele13_eta2p1_WP90NoIso_LooseIsoPFTau20_L1ETM36_v2, HLT_Ele13_eta2p1_WP90Rho_LooseIsoPFTau20_v2, HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Jet30_v6, HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_v5, HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Prong1_v5, HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_v5, HLT_IsoMu18_eta2p1_MediumIsoPFTau25_Trk1_eta2p1_v5, HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Reg_Jet30_v2, HLT_DoubleMediumIsoPFTau30_Trk1_eta2p1_Reg_v2, HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Prong1_Reg_v2, HLT_DoubleMediumIsoPFTau35_Trk1_eta2p1_Reg_v2, HLT_IsoMu18_eta2p1_MediumIsoPFTau25_Trk1_eta2p1_Reg_v2, HLT_DoubleIsoL2Tau30_eta2p1_v1, HLT_BTagMu_DiJet20_Mu5_v7, HLT_BTagMu_DiJet40_Mu5_v7, HLT_BTagMu_DiJet70_Mu5_v7, HLT_BTagMu_DiJet110_Mu5_v7, HLT_BTagMu_Jet300_Mu5_v7, HLT_Mu7_Ele7_CaloIdT_CaloIsoVL_v8, HLT_Mu8_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v10, HLT_Mu8_DiJet30_v8, HLT_Mu8_TriJet30_v8, HLT_Mu8_QuadJet30_v8, HLT_IsoMu12_DoubleCentralJet65_v5, HLT_Mu15_eta2p1_L1ETM20_v6, HLT_IsoMu18_CentralPFJet30_CentralPFJet25_v2, HLT_IsoMu18_PFJet30_PFJet25_Deta3_v2, HLT_Mu18_CentralPFJet30_CentralPFJet25_v2, HLT_Mu18_PFJet30_PFJet25_Deta3_CentralPFJet25_v2, HLT_IsoMu18_CentralPFJet30_CentralPFJet25_PFMET20_v2, HLT_IsoMu18_PFJet30_PFJet25_Deta3_CentralPFJet25_v2, HLT_Ele24_WP80_CentralPFJet35_CentralPFJet25_v3, HLT_Ele24_WP80_PFJet30_PFJet25_Deta3_v3, HLT_Ele24_WP80_PFJet30_PFJet25_Deta3_CentralPFJet30_v3, HLT_Ele24_WP80_CentralPFJet35_CentralPFJet25_PFMET20_v3, HLT_IsoMu17_eta2p1_CentralPFNoPUJet30_BTagIPIter_v5, HLT_IsoMu17_eta2p1_CentralPFNoPUJet30_v5, HLT_IsoMu17_eta2p1_DiCentralPFNoPUJet30_v5, HLT_IsoMu17_eta2p1_TriCentralPFNoPUJet45_35_25_v3, HLT_IsoMu17_eta2p1_TriCentralPFNoPUJet30_v5, HLT_Mu17_eta2p1_CentralPFNoPUJet30_BTagIPIter_v5, HLT_Mu17_eta2p1_TriCentralPFNoPUJet45_35_25_v3, HLT_IsoMu20_WCandPt80_v5, HLT_Mu17_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v10, HLT_Mu12_eta2p1_DiCentral_40_20_DiBTagIP3D1stTrack_v9, HLT_Mu12_eta2p1_DiCentral_40_20_BTagIP3D1stTrack_v9, HLT_Mu12_eta2p1_DiCentral_40_20_v9, HLT_Mu12_eta2p1_DiCentral_20_v9, HLT_Mu15_eta2p1_DiCentral_40_20_v2, HLT_Mu15_eta2p1_DiCentral_20_v2, HLT_Mu15_eta2p1_TriCentral_40_20_20_DiBTagIP3D1stTrack_v9, HLT_Mu15_eta2p1_TriCentral_40_20_20_BTagIP3D1stTrack_v9, HLT_Mu15_eta2p1_TriCentral_40_20_20_v9, HLT_Mu30_Ele30_CaloIdL_v9, HLT_IsoMu17_eta2p1_DiCentralPFNoPUJet30_PFNoPUHT350_PFMHT40_v4, HLT_IsoMu20_eta2p1_CentralPFJet80_v10, HLT_DoubleRelIso1p0Mu5_Mass8_PFNoPUHT175_v5, HLT_DoubleRelIso1p0Mu5_Mass8_PFNoPUHT225_v5, HLT_DoubleMu8_Mass8_PFNoPUHT175_v5, HLT_DoubleMu8_Mass8_PFNoPUHT225_v5, HLT_RelIso1p0Mu5_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT175_v6, HLT_RelIso1p0Mu5_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT225_v6, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT175_v6, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT225_v6, HLT_PFNoPUHT350_Mu15_PFMET45_v5, HLT_PFNoPUHT350_Mu15_PFMET50_v5, HLT_PFNoPUHT400_Mu5_PFMET45_v5, HLT_PFNoPUHT400_Mu5_PFMET50_v5, HLT_Mu40_PFNoPUHT350_v5, HLT_Mu60_PFNoPUHT350_v5, HLT_DoubleMu5_Ele8_CaloIdT_TrkIdVL_v17, HLT_DoubleMu8_Ele8_CaloIdT_TrkIdVL_v6, HLT_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Jet30_v8, HLT_Ele8_CaloIdT_TrkIdT_DiJet30_v19, HLT_Ele8_CaloIdT_TrkIdT_TriJet30_v19, HLT_Ele8_CaloIdT_TrkIdT_QuadJet30_v19, HLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Jet30_v8, HLT_Ele25_CaloIdVT_CaloIsoT_TrkIdT_TrkIsoT_CentralPFNoPUJet30_v10, HLT_Ele25_CaloIdVT_CaloIsoVL_TrkIdVL_TrkIsoT_DiCentralPFNoPUJet30_v4, HLT_Ele25_CaloIdVT_CaloIsoT_TrkIdT_TrkIsoT_CentralPFNoPUJet30_BTagIPIter_v11, HLT_Ele27_WP80_CentralPFJet80_v11, HLT_Ele27_WP80_WCandPt80_v11, HLT_Ele30_CaloIdVT_TrkIdT_PFNoPUJet100_PFNoPUJet25_v9, HLT_Ele30_CaloIdVT_TrkIdT_PFNoPUJet150_PFNoPUJet25_v9, HLT_DoubleEle8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT175_v5, HLT_DoubleEle8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT225_v5, HLT_DoubleEle10_CaloIdL_TrkIdVL_Ele10_CaloIdT_TrkIdVL_v13, HLT_TripleEle10_CaloIdL_TrkIdVL_v19, HLT_RsqMR40_Rsq0p04_v6, HLT_RsqMR45_Rsq0p09_v5, HLT_RsqMR55_Rsq0p09_MR150_v6, HLT_RsqMR60_Rsq0p09_MR150_v6, HLT_RsqMR65_Rsq0p09_MR150_v5, HLT_IsoMu12_RsqMR30_Rsq0p04_MR200_v5, HLT_IsoMu12_RsqMR40_Rsq0p04_MR200_v5, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_RsqMR30_Rsq0p04_MR200_v5, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_RsqMR40_Rsq0p04_MR200_v5, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_DoubleCentralJet65_v5, HLT_Photon40_CaloIdL_RsqMR40_Rsq0p09_MR150_v7, HLT_Photon40_CaloIdL_RsqMR45_Rsq0p09_MR150_v7, HLT_Photon40_CaloIdL_RsqMR50_Rsq0p09_MR150_v7, HLT_DoublePhoton40_CaloIdL_Rsq0p035_v7, HLT_DoublePhoton40_CaloIdL_Rsq0p06_v7, HLT_Mu22_Photon22_CaloIdL_v8, HLT_Mu8_DoubleEle8_CaloIdT_TrkIdVL_v8, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Ele8_CaloIdL_TrkIdVL_v8, HLT_DoubleMu14_Mass8_PFMET40_v9, HLT_DoubleMu14_Mass8_PFMET50_v9, HLT_DoubleEle14_CaloIdT_TrkIdVL_Mass8_PFMET40_v9, HLT_DoubleEle14_CaloIdT_TrkIdVL_Mass8_PFMET50_v9, HLT_Mu14_Ele14_CaloIdT_TrkIdVL_Mass8_PFMET40_v9, HLT_Mu14_Ele14_CaloIdT_TrkIdVL_Mass8_PFMET50_v9, HLT_PFNoPUHT350_PFMET100_v5, HLT_PFNoPUHT400_PFMET100_v5, HLT_CleanPFNoPUHT350_Ele5_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET45_v4, HLT_CleanPFNoPUHT350_Ele5_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET50_v4, HLT_CleanPFNoPUHT300_Ele15_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET45_v4, HLT_CleanPFNoPUHT300_Ele15_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET50_v4, HLT_CleanPFNoPUHT300_Ele40_CaloIdVT_TrkIdT_v4, HLT_CleanPFNoPUHT300_Ele60_CaloIdVT_TrkIdT_v4, HLT_Ele5_SC5_Jpsi_Mass2to15_v6, HLT_DiJet20_MJJ650_AllJets_DEta3p5_HT120_VBF_v1, HLT_DiJet30_MJJ700_AllJets_DEta3p5_VBF_v1, HLT_DiJet35_MJJ650_AllJets_DEta3p5_VBF_v5, HLT_DiJet35_MJJ700_AllJets_DEta3p5_VBF_v5, HLT_DiJet35_MJJ750_AllJets_DEta3p5_VBF_v5, HLT_Ele22_eta2p1_WP90Rho_LooseIsoPFTau20_v8, HLT_Ele22_eta2p1_WP90NoIso_LooseIsoPFTau20_v8, HLT_IsoMu17_eta2p1_LooseIsoPFTau20_v8, HLT_Mu17_eta2p1_LooseIsoPFTau20_v8, HLT_PixelTracks_Multiplicity70_v4, HLT_PixelTracks_Multiplicity80_v13, HLT_PixelTracks_Multiplicity90_v4, DST_HT250_v5, DST_L1HTT_Or_L1MultiJet_v4, DST_Mu5_HT250_v5, DST_Ele8_CaloIdL_CaloIsoVL_TrkIdVL_TrkIsoVL_HT250_v6, HLT_BeamGas_HF_Beam1_v5, HLT_BeamGas_HF_Beam2_v5, HLT_BeamHalo_v13, HLT_L1Tech_CASTOR_HaloMuon_v4, HLT_L1Tech_DT_GlobalOR_v4, HLT_HcalUTCA_v1, HLT_IsoTrackHE_v16, HLT_IsoTrackHB_v15, HLT_HcalPhiSym_v11, HLT_HcalNZS_v10, HLT_GlobalRunHPDNoise_v8, HLT_L1Tech_HBHEHO_totalOR_v6, HLT_L1Tech_HCAL_HF_single_channel_v4, HLT_ZeroBias_v7, HLT_ZeroBias_Parked_v1, HLT_ZeroBiasPixel_DoubleTrack_v2, HLT_Physics_v5, HLT_Physics_Parked_v1, DST_Physics_v5, HLT_DTCalibration_v2, HLT_EcalCalibration_v3, HLT_HcalCalibration_v3, HLT_TrackerCalibration_v3, HLT_Random_v2, HLT_L1SingleMuOpen_AntiBPTX_v7, HLT_L1TrackerCosmics_v7, HLT_DTErrors_v3, HLT_L1DoubleJet36Central_v7, AlCa_EcalPi0EBonly_v6, AlCa_EcalPi0EEonly_v6, AlCa_EcalEtaEBonly_v6, AlCa_EcalEtaEEonly_v6, AlCa_EcalPhiSym_v13, AlCa_RPCMuonNoTriggers_v9, AlCa_RPCMuonNoHits_v9, AlCa_RPCMuonNormalisation_v9, AlCa_LumiPixels_v8, AlCa_LumiPixels_ZeroBias_v4, AlCa_LumiPixels_Random_v1, HLT_PFJet360_v1, HLT_Jet420_NoJetID_v1, HLT_PFJet450_v1, HLT_MonoCentralPFJet150_PFMETnoMu105_NHEF0p95_v1, HLT_DiPFJetAve450_v1, HLT_FatDiPFJetMass850_DR1p1_Deta1p5_v1, HLT_DiJet80_DiJet60_DiJet30_v1, HLT_DiPFJet40_PFMETnoMu75_MJJ800VBF_AllJets_v1, HLT_DiPFJet40_PFMETnoMu75_MJJ600VBF_LeadingJets_v1, HLT_DiJet110Eta2p6_BTagIP3DFastPVLoose_v1, HLT_Jet100Eta1p7_Jet85Eta1p7_DiBTagIP3DFastPV_v1, HLT_Jet190Eta2p4_Jet145Eta2p4_DiBTagIP3DFastPVLoose_v1, HLT_QuadJet60_DiJet30_v1, HLT_QuadJet100_v1, HLT_QuadJet90_65_45_25_BTagIP_VBF_v1, HLT_QuadPFJet95_75_55_40_BTagCSV_VBF_v1, HLT_SixJet55_v1, HLT_EightJet40_eta3p0_v1, HLT_HT285_AlphaT0p55_v1, HLT_HT290_AlphaT0p57_v1, HLT_HT340_AlphaT0p53_v1, HLT_HT340_AlphaT0p54_v1, HLT_HT360_DoubleDisplacedPFJet60_v1, HLT_HT385_AlphaT0p52_v1, HLT_HT380_AlphaT0p53_v1, HLT_HT440_AlphaT0p51_v1, HLT_HT445_AlphaT0p52_v1, HLT_HT500_AlphaT0p51_v1, HLT_HT820_Track50_dEdx3p6_v1, HLT_HT820_Track60_dEdx3p7_v1, HLT_HT850_v1, HLT_PFNoPUHT735_v1, HLT_PFNoPUHT735_DiCentralPFNoPUJet80_CenPFNoPUJet40_v1, HLT_PFNoPUHT800_v1, HLT_PFNoPUHT850_v1, HLT_PFMET200_v1, HLT_PFMET230_v1, HLT_DiCentralJetSumpT100_dPhi05_DiCentralPFJet60_25_PFMET120_HBHENoiseCleaned_v1, HLT_DiCentralPFNoPUJet50_PFMETORPFMETNoMu100_v1, HLT_DiCentralPFJet30_PFMET90_BTagCSV07_v1, HLT_DiPFJet95_DiPFJet35_BTagCSVd07d05d03_v1, HLT_DiPFJet95_DiPFJet35_BTagCSVd07d05d05_v1, HLT_DiPFJet95_DiPFJet35_BTagCSVd07d05_v1, HLT_MET85_Track50_dEdx3p6_v1, HLT_MET85_Track60_dEdx3p7_v1, HLT_MET140_HBHENoiseCleaned_v1, HLT_MET250_v1, HLT_MET230_HBHENoiseCleaned_v1, HLT_MET375_v1, HLT_MET500_HBHENoiseCleaned_v1, HLT_MET500_v1, HLT_L2Mu75_2Cha_eta2p1_PFMET60_v1, HLT_L2Mu75_2Cha_eta2p1_PFMET65_v1, HLT_L2TripleMu17_4_4_NoVertex_PFJet40Neutral_v1, HLT_DoubleDisplacedMu6_DiPFJet40Neutral_v1, HLT_Mu47_v1, HLT_Mu47_eta2p1_v1, HLT_Mu60_eta2p1_v1, HLT_IsoMu25_eta2p1_L1ETM20_v1, HLT_IsoMu34_v1, HLT_IsoMu38_v1, HLT_IsoMu38_eta2p1_v1, HLT_IsoMu47_eta2p1_v1, HLT_Mu40_eta2p1_Track60_dEdx3p6_v1, HLT_Mu40_eta2p1_Track70_dEdx3p7_v1, HLT_L2DoubleMu48_NoVertex_2Cha_Angle2p5_v1, HLT_DoubleMu20_Acoplanarity03_v1, HLT_Mu23_Mu10_v1, HLT_Mu23_TkMu10_v1, HLT_Mu23_TkMu10_NoDZ_v1, HLT_Mu30_TkMu10_v1, HLT_Mu30_TkMu30_v1, HLT_TripleMu6_v1, HLT_DoubleMu6_IsoMu6_v1, HLT_Photon34_R9Id85_OR_CaloId10_Iso50_Photon24_R9Id85_OR_CaloId10_Iso50_Mass70_v1, HLT_Photon42_R9Id85_Photon28_R9Id85_v1, HLT_Photon42_R9Id85_Photon28_CaloId10_Iso50_v1, HLT_Photon42_CaloId10_Iso50_Photon28_R9Id85_v1, HLT_Photon42_CaloId10_Iso50_Photon28_CaloId10_Iso50_v1, HLT_Photon42_R9Id85_OR_CaloId10_Iso50_Photon28_R9Id85_OR_CaloId10_Iso50_v1, HLT_Photon42_R9Id85_OR_CaloId10_Iso50_Photon15_R9Id85_OR_CaloId10_Iso50_Mass80_v1, HLT_Photon70_CaloIdXL_PFNoPUHT470_v1, HLT_Photon70_CaloIdXL_PFNoPUHT580_v1, HLT_Photon110_CaloIdXL_PFMET100_v1, HLT_DisplacedPhoton70_CaloIdVL_IsoL_PFMET30_v1, HLT_DisplacedPhoton70EBOnly_CaloIdVL_IsoL_PFMET35_v1, HLT_Photon155_v1, HLT_Photon175_v1, HLT_Photon185_v1, HLT_Photon330_NoHE_v1, HLT_DoublePhoton56_HEVT_v1, HLT_DoublePhoton61_HEVT_v1, HLT_DoublePhoton92_v1, HLT_Ele30_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele27_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v1, HLT_Ele38_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele20_CaloIdT_CaloIsoVL_trackless_v1, HLT_Ele38_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_HFT20_v1, HLT_Ele30_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_HFT35_v1, HLT_Ele28_CaloIdVT_CaloIsoT_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet40_v1, HLT_Ele28_CaloIdVT_CaloIsoT_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet60_40_25_v1, HLT_Ele28_CaloIdVT_CaloIsoT_TrkIdVL_TrkIsoT_TriCentralPFNoPUJet65_45_30_v1, HLT_Ele36_WP80_v1, HLT_Ele36_WP80_PFMET_MT60_v1, HLT_Ele100_CaloIdVT_GsfTrkIdT_v1, HLT_Ele115_CaloIdVT_GsfTrkIdT_v1, HLT_DoubleEle40_CaloIdL_GsfTrkIdVL_v1, HLT_DoubleEle40_CaloIdT_v1, HLT_Ele18_Ele12_Ele10_CaloIdL_TrkIdVL_v1, HLT_LooseIsoPFTau50_Trk20_Prong1_v1, HLT_LooseIsoPFTau50_Trk20_Prong1_MET75_v1, HLT_LooseIsoPFTau50_Trk20_Prong1_MET80_v1, HLT_IsoMu25_eta2p1_LooseIsoPFTau35_Trk45_Prong1_L1ETM20_v1, HLT_IsoMu8_eta2p1_LooseIsoPFTau40_L1ETM26_v1, HLT_IsoMu8_eta2p1_LooseIsoPFTau40_v1, HLT_Ele25_eta2p1_WP90Rho_LooseIsoPFTau45_L1ETM36_v1, HLT_Ele25_eta2p1_WP90Rho_LooseIsoPFTau45_v1, HLT_DoubleMediumIsoPFTau45_Trk1_eta2p1_Reg_Jet30_v1, HLT_DoubleMediumIsoPFTau50_Trk1_eta2p1_Prong1_Reg_v1, HLT_IsoMu26_eta2p1_MediumIsoPFTau30_Trk1_eta2p1_Reg_v1, HLT_BTagMu_Jet375_Mu5_v1, HLT_Mu10_Ele20_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v1, HLT_Mu8_QuadJet42_v1, HLT_IsoMu22_CentralPFJet35_CentralPFJet30_v1, HLT_IsoMu22_PFJet33_PFJet28_Deta3_v1, HLT_IsoMu22_CentralPFJet35_CentralPFJet30_PFMET22_v1, HLT_IsoMu22_PFJet33_PFJet28_Deta3_CentralPFJet25_v1, HLT_Ele36_WP80_CentralPFJet40_CentralPFJet30_v1, HLT_Ele36_WP80_PFJet35_PFJet30_Deta3_v1, HLT_Ele36_WP80_PFJet35_PFJet30_Deta3_CentralPFJet35_v1, HLT_Ele36_WP80_CentralPFJet40_CentralPFJet30_PFMET25_v1, HLT_IsoMu20_eta2p1_CentralPFNoPUJet40_BTagIPIter_v1, HLT_IsoMu20_eta2p1_TriCentralPFNoPUJet60_40_25_v1, HLT_IsoMu20_eta2p1_TriCentralPFNoPUJet35_v1, HLT_IsoMu25_WCandPt90_v1, HLT_Mu20_Ele10_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v1, HLT_Mu15_eta2p1_DiCentral_50_20_DiBTagIP3D1stTrack_v1, HLT_Mu18_eta2p1_TriCentral_50_20_20_DiBTagIP3D1stTrack_v1, HLT_Mu36_Ele36_CaloIdL_v1, HLT_IsoMu17_eta2p1_DiCentralPFNoPUJet30_PFNoPUHT410_PFMHT40_v1, HLT_IsoMu25_eta2p1_CentralPFJet90_v1, HLT_DoubleRelIso1p0Mu5_Mass8_PFNoPUHT300_v1, HLT_DoubleRelIso1p0Mu5_Mass8_PFNoPUHT325_v1, HLT_DoubleMu8_Mass8_PFNoPUHT300_v1, HLT_DoubleMu8_Mass8_PFNoPUHT340_v1, HLT_RelIso1p0Mu5_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT300_v1, HLT_RelIso1p0Mu5_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT325_v1, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT300_v1, HLT_Mu8_Ele8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT325_v1, HLT_PFNoPUHT400_Mu15_PFMET50_v1, HLT_PFNoPUHT400_Mu15_PFMET55_v1, HLT_PFNoPUHT450_Mu5_PFMET50_v1, HLT_PFNoPUHT450_Mu5_PFMET55_v1, HLT_Mu40_PFNoPUHT410_v1, HLT_Mu60_PFNoPUHT470_v1, HLT_DoubleMu8_Ele10_CaloIdT_TrkIdVL_v1, HLT_DoubleMu10_Ele10_CaloIdT_TrkIdVL_v1, HLT_Ele36_CaloIdVT_CaloIsoT_TrkIdT_TrkIsoT_CentralPFNoPUJet50_BTagIPIter_v1, HLT_Ele36_WP80_CentralPFJet95_v1, HLT_Ele36_WP80_WCandPt108_v1, HLT_Ele30_CaloIdVT_TrkIdT_PFNoPUJet125_PFNoPUJet25_v1, HLT_Ele30_CaloIdVT_TrkIdT_PFNoPUJet180_PFNoPUJet25_v1, HLT_DoubleEle8_CaloIdT_TrkIdVL_Mass8_PFNoPUHT325_v1, HLT_DoubleEle13_CaloIdL_TrkIdVL_Ele13_CaloIdT_TrkIdVL_v1, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_RsqMR35_Rsq0p04_MR200_v1, HLT_Ele12_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_RsqMR47_Rsq0p04_MR200_v1, HLT_TripleEle13_CaloIdL_TrkIdVL_v1, HLT_Photon40_CaloIdL_RsqMR55_Rsq0p09_MR150_v1, HLT_DoublePhoton46_CaloIdL_Rsq0p035_v1, HLT_DoublePhoton46_CaloIdL_Rsq0p06_v1, HLT_Mu26_Photon26_CaloIdL_v1, HLT_Mu10_DoubleEle10_CaloIdT_TrkIdVL_v1, HLT_Mu10_Ele10_CaloIdT_TrkIdVL_Ele10_CaloIdL_TrkIdVL_v1, HLT_DoubleMu14_Mass8_PFMET60_v1, HLT_DoubleEle14_CaloIdT_TrkIdVL_Mass8_PFMET55_v1, HLT_Mu14_Ele14_CaloIdT_TrkIdVL_Mass8_PFMET60_v1, HLT_PFNoPUHT405_PFMET100_v1, HLT_PFNoPUHT450_PFMET100_v1, HLT_CleanPFNoPUHT400_Ele8_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET50_v1, HLT_CleanPFNoPUHT400_Ele8_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET60_v1, HLT_CleanPFNoPUHT350_Ele18_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET50_v1, HLT_CleanPFNoPUHT350_Ele18_CaloIdT_CaloIsoVL_TrkIdT_TrkIsoVL_PFMET60_v1, HLT_CleanPFNoPUHT300_Ele55_CaloIdVT_TrkIdT_v1, HLT_CleanPFNoPUHT300_Ele85_CaloIdVT_TrkIdT_v1, HLT_Ele30_eta2p1_WP90Rho_LooseIsoPFTau45_v1, HLT_IsoMu30_eta2p1_LooseIsoPFTau45_v1, HLT_IsoMu17_eta2p1_DiCentralPFNoPUJet30_PFNoPUHT350_PFMHT60_v1, DQM_FEDIntegrity_v11, HLT_LogMonitor_v4, HLTriggerFinalPath, HLTAnalyzerEndpath )) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in locals(): - hltHfreco.setNoiseFlags = cms.bool( True ) - # CMSSW version specific customizations import os cmsswVersion = os.environ['CMSSW_VERSION'] diff --git a/HLTrigger/Configuration/python/HLT_FULL_Famos_cff.py b/HLTrigger/Configuration/python/HLT_FULL_Famos_cff.py index aa5d685dfb729..1144ba17a0a43 100644 --- a/HLTrigger/Configuration/python/HLT_FULL_Famos_cff.py +++ b/HLTrigger/Configuration/python/HLT_FULL_Famos_cff.py @@ -16111,10 +16111,6 @@ HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu17_NoFilters_v1, HLT_Mu40_v1, HLT_IsoMu24_IterTrk02_v1, HLT_IsoTkMu24_IterTrk02_v1, HLT_DoubleMu4_Jpsi_Displaced_v1, HLT_Mu17_Mu8_v1, HLT_Mu17_TkMu8_v1, HLT_Mu30_TkMu11_v1, HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_v1, HLT_Mu17_TrkIsoVVL_TkMu8_TrkIsoVVL_v1, HLT_DoubleMu4_3_Bs_v1, HLT_DoubleMu4_3_Jpsi_Displaced_v1, HLT_Dimuon20_Jpsi_v1, HLT_Dimuon13_PsiPrime_v1, HLT_Dimuon13_Upsilon_v1, HLT_Mu25_TkMu0_dEta18_Onia_v1, HLT_DoubleMu4_JpsiTrk_Displaced_v1, HLT_DoubleMu4_PsiPrimeTrk_Displaced_v1, HLT_DoubleMu4_LowMassNonResonantTrk_Displaced_v1, HLT_Ele27_WP80_Gsf_v1, HLT_Ele17_Ele8_Gsf_v1, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1, HLT_Photon36_R9Id85_OR_CaloId24b40e_Iso50T80L_Photon18_AND_HE10_R9Id65_Mass95_v1, HLT_Photon42_R9Id85_OR_CaloId24b40e_Iso50T80L_Photon22_AND_HE10_R9Id65_v1, HLT_PFJet40_v1, HLT_PFJet260_v1, HLT_CaloJet260_v1, HLT_HT650_v1, HLT_PFHT650_v1, HLT_IsoMu17_eta2p1_LooseIsoPFTau20_v1, HLT_Ele22_eta2p1_WP90Rho_Gsf_LooseIsoPFTau20_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v1, HLT_LooseIsoPFTau40_Trk25_Prong1_eta2p1_PFMET65_v1, HLT_PFMET180_NoiseCleaned_v1, HLT_PFchMET90_NoiseCleaned_v1, HLT_BTagCSV07_v1, HLT_IterativeTracking_v1, HLT_ReducedIterativeTracking_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_CentralPFJet30_BTagCSV_v1, HLT_Ele27_WP80_Gsf_CentralPFJet30_BTagCSV_v1, HLT_Ele23_Ele12_CaloId_TrackId_Iso_v1, HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1, HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon135_PFMET40_v1, HLT_Photon150_PFMET40_v1, HLT_Photon160_PFMET40_v1, HLT_Photon250_NoHE_PFMET40_v1, HLT_Photon300_NoHE_PFMET40_v1, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon135_VBF_v1, HLT_Photon150_VBF_v1, HLT_Photon160_VBF_v1, HLT_Photon250_NoHE_VBF_v1, HLT_Photon300_NoHE_VBF_v1, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_MW_v1, HLT_Ele95_CaloIdVT_GsfTrkIdT_v1, HLT_DoublePho85_v1, HLT_Photon155_v1, HLT_PFHT750_4Jet_v1, HLT_Physics_v1, HLTriggerFinalPath )) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in locals(): - hltHfreco.setNoiseFlags = cms.bool( True ) - # CMSSW version specific customizations import os cmsswVersion = os.environ['CMSSW_VERSION'] diff --git a/HLTrigger/Configuration/python/HLT_FULL_cff.py b/HLTrigger/Configuration/python/HLT_FULL_cff.py index b6713dd9e8ab1..3dc2e8623735c 100644 --- a/HLTrigger/Configuration/python/HLT_FULL_cff.py +++ b/HLTrigger/Configuration/python/HLT_FULL_cff.py @@ -26487,10 +26487,6 @@ HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu17_NoFilters_v1, HLT_Mu40_v1, HLT_IsoMu24_IterTrk02_v1, HLT_IsoTkMu24_IterTrk02_v1, HLT_DoubleMu4_Jpsi_Displaced_v1, HLT_Mu17_Mu8_v1, HLT_Mu17_TkMu8_v1, HLT_Mu30_TkMu11_v1, HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_v1, HLT_Mu17_TrkIsoVVL_TkMu8_TrkIsoVVL_v1, HLT_DoubleMu4_3_Bs_v1, HLT_DoubleMu4_3_Jpsi_Displaced_v1, HLT_Dimuon20_Jpsi_v1, HLT_Dimuon13_PsiPrime_v1, HLT_Dimuon13_Upsilon_v1, HLT_Mu25_TkMu0_dEta18_Onia_v1, HLT_DoubleMu4_JpsiTrk_Displaced_v1, HLT_DoubleMu4_PsiPrimeTrk_Displaced_v1, HLT_DoubleMu4_LowMassNonResonantTrk_Displaced_v1, HLT_Ele27_WP80_Gsf_v1, HLT_Ele17_Ele8_Gsf_v1, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1, HLT_Photon36_R9Id85_OR_CaloId24b40e_Iso50T80L_Photon18_AND_HE10_R9Id65_Mass95_v1, HLT_Photon42_R9Id85_OR_CaloId24b40e_Iso50T80L_Photon22_AND_HE10_R9Id65_v1, HLT_PFJet40_v1, HLT_PFJet260_v1, HLT_CaloJet260_v1, HLT_HT650_v1, HLT_PFHT650_v1, HLT_L2Mu10_NoVertex_NoBPTX_v1, HLT_L2Mu10_NoVertex_NoBPTX3BX_NoHalo_v1, HLT_L2Mu20_NoVertex_3Sta_NoBPTX3BX_NoHalo_v1, HLT_L2Mu30_NoVertex_3Sta_NoBPTX3BX_NoHalo_v1, HLT_JetE30_NoBPTX_v1, HLT_JetE30_NoBPTX3BX_NoHalo_v1, HLT_JetE50_NoBPTX3BX_NoHalo_v1, HLT_JetE70_NoBPTX3BX_NoHalo_v1, HLT_IsoMu17_eta2p1_LooseIsoPFTau20_v1, HLT_Ele22_eta2p1_WP90Rho_Gsf_LooseIsoPFTau20_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v1, HLT_LooseIsoPFTau40_Trk25_Prong1_eta2p1_PFMET65_v1, HLT_PFMET180_NoiseCleaned_v1, HLT_PFchMET90_NoiseCleaned_v1, HLT_BTagCSV07_v1, HLT_IterativeTracking_v1, HLT_ReducedIterativeTracking_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_CentralPFJet30_BTagCSV_v1, HLT_Ele27_WP80_Gsf_CentralPFJet30_BTagCSV_v1, HLT_Ele23_Ele12_CaloId_TrackId_Iso_v1, HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1, HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon135_PFMET40_v1, HLT_Photon150_PFMET40_v1, HLT_Photon160_PFMET40_v1, HLT_Photon250_NoHE_PFMET40_v1, HLT_Photon300_NoHE_PFMET40_v1, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon135_VBF_v1, HLT_Photon150_VBF_v1, HLT_Photon160_VBF_v1, HLT_Photon250_NoHE_VBF_v1, HLT_Photon300_NoHE_VBF_v1, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_MW_v1, HLT_Ele95_CaloIdVT_GsfTrkIdT_v1, HLT_DoublePho85_v1, HLT_Photon155_v1, HLT_PFHT750_4Jet_v1, HLT_Physics_v1, HLTriggerFinalPath, HLTAnalyzerEndpath )) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in locals(): - hltHfreco.setNoiseFlags = cms.bool( True ) - # CMSSW version specific customizations import os cmsswVersion = os.environ['CMSSW_VERSION'] diff --git a/HLTrigger/Configuration/python/HLT_GRun_Famos_cff.py b/HLTrigger/Configuration/python/HLT_GRun_Famos_cff.py index 7919e705a1906..f81b4ef52b977 100644 --- a/HLTrigger/Configuration/python/HLT_GRun_Famos_cff.py +++ b/HLTrigger/Configuration/python/HLT_GRun_Famos_cff.py @@ -1,11 +1,11 @@ -# /dev/CMSSW_7_1_1/GRun/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/GRun/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms from FastSimulation.HighLevelTrigger.HLTSetup_cff import * HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/GRun/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/GRun/V87') ) HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -13926,6 +13926,1022 @@ candTag = cms.InputTag( "hltMu8Ele23GsfDphiLegEle23GsfCaloIdTrackIdIsoMediumWPFilter" ), nonIsoTag = cms.InputTag( "" ) ) +hltPrePhoton22R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltHybridSuperClustersL1Seeded = cms.EDProducer( "EgammaHLTHybridClusterProducer", + xi = cms.double( 0.0 ), + regionEtaMargin = cms.double( 0.14 ), + regionPhiMargin = cms.double( 0.4 ), + severityRecHitThreshold = cms.double( 4.0 ), + RecHitFlagToBeExcluded = cms.vstring( ), + ecalhitcollection = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + eThreshA = cms.double( 0.003 ), + basicclusterCollection = cms.string( "" ), + eThreshB = cms.double( 0.1 ), + dynamicPhiRoad = cms.bool( False ), + useEtForXi = cms.bool( True ), + l1UpperThr = cms.double( 999.0 ), + excludeFlagged = cms.bool( True ), + posCalcParameters = cms.PSet( + T0_barl = cms.double( 7.4 ), + LogWeighted = cms.bool( True ), + T0_endc = cms.double( 3.1 ), + T0_endcPresh = cms.double( 1.2 ), + W0 = cms.double( 4.2 ), + X0 = cms.double( 0.89 ) + ), + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + eseed = cms.double( 0.35 ), + ethresh = cms.double( 0.1 ), + ewing = cms.double( 0.0 ), + RecHitSeverityToBeExcluded = cms.vstring( 'kWeird' ), + step = cms.int32( 17 ), + debugLevel = cms.string( "INFO" ), + dynamicEThresh = cms.bool( False ), + l1TagIsolated = cms.InputTag( 'l1extraParticles','Isolated' ), + superclusterCollection = cms.string( "" ), + HybridBarrelSeedThr = cms.double( 1.5 ), + l1TagNonIsolated = cms.InputTag( 'l1extraParticles','NonIsolated' ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ) +) +hltCorrectedHybridSuperClustersL1Seeded = cms.EDProducer( "EgammaSCCorrectionMaker", + corectedSuperClusterCollection = cms.string( "" ), + sigmaElectronicNoise = cms.double( 0.03 ), + superClusterAlgo = cms.string( "Hybrid" ), + etThresh = cms.double( 1.0 ), + rawSuperClusterProducer = cms.InputTag( "hltHybridSuperClustersL1Seeded" ), + applyEnergyCorrection = cms.bool( True ), + isl_fCorrPset = cms.PSet( ), + VerbosityLevel = cms.string( "ERROR" ), + recHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + fix_fCorrPset = cms.PSet( ), + modeEE = cms.int32( 0 ), + modeEB = cms.int32( 0 ), + dyn_fCorrPset = cms.PSet( ), + energyCorrectorName = cms.string( "EcalClusterEnergyCorrectionObjectSpecific" ), + applyLocalContCorrection = cms.bool( False ), + localContCorrectorName = cms.string( "EcalBasicClusterLocalContCorrection" ), + crackCorrectorName = cms.string( "EcalClusterCrackCorrection" ), + applyCrackCorrection = cms.bool( False ), + hyb_fCorrPset = cms.PSet( + brLinearLowThr = cms.double( 1.1 ), + fBremVec = cms.vdouble( -0.05208, 0.1331, 0.9196, -5.735E-4, 1.343 ), + brLinearHighThr = cms.double( 8.0 ), + fEtEtaVec = cms.vdouble( 1.0012, -0.5714, 0.0, 0.0, 0.0, 0.5549, 12.74, 1.0448, 0.0, 0.0, 0.0, 0.0, 8.0, 1.023, -0.00181, 0.0, 0.0 ) + ) +) +hltMulti5x5BasicClustersL1Seeded = cms.EDProducer( "EgammaHLTMulti5x5ClusterProducer", + l1LowerThr = cms.double( 5.0 ), + Multi5x5BarrelSeedThr = cms.double( 0.5 ), + Multi5x5EndcapSeedThr = cms.double( 0.18 ), + endcapHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + barrelClusterCollection = cms.string( "notused" ), + regionEtaMargin = cms.double( 0.3 ), + regionPhiMargin = cms.double( 0.4 ), + RecHitFlagToBeExcluded = cms.vstring( ), + l1TagNonIsolated = cms.InputTag( 'l1extraParticles','NonIsolated' ), + posCalcParameters = cms.PSet( + T0_barl = cms.double( 7.4 ), + LogWeighted = cms.bool( True ), + T0_endc = cms.double( 3.1 ), + T0_endcPresh = cms.double( 1.2 ), + W0 = cms.double( 4.2 ), + X0 = cms.double( 0.89 ) + ), + VerbosityLevel = cms.string( "ERROR" ), + doIsolated = cms.bool( True ), + barrelHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + l1TagIsolated = cms.InputTag( 'l1extraParticles','Isolated' ), + doEndcaps = cms.bool( True ), + doBarrel = cms.bool( False ), + endcapClusterCollection = cms.string( "multi5x5EndcapBasicClusters" ), + l1UpperThr = cms.double( 999.0 ) +) +hltMulti5x5SuperClustersL1Seeded = cms.EDProducer( "Multi5x5SuperClusterProducer", + barrelSuperclusterCollection = cms.string( "multi5x5BarrelSuperClusters" ), + endcapEtaSearchRoad = cms.double( 0.14 ), + dynamicPhiRoad = cms.bool( False ), + endcapClusterTag = cms.InputTag( 'hltMulti5x5BasicClustersL1Seeded','multi5x5EndcapBasicClusters' ), + barrelPhiSearchRoad = cms.double( 0.8 ), + endcapPhiSearchRoad = cms.double( 0.6 ), + seedTransverseEnergyThreshold = cms.double( 1.0 ), + endcapSuperclusterCollection = cms.string( "multi5x5EndcapSuperClusters" ), + barrelEtaSearchRoad = cms.double( 0.06 ), + barrelClusterTag = cms.InputTag( 'hltMulti5x5BasicClustersL1Seeded','multi5x5BarrelBasicClusters' ), + doBarrel = cms.bool( False ), + doEndcaps = cms.bool( True ), + bremRecoveryPset = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( + a = cms.double( 47.85 ), + c = cms.double( 0.1201 ), + b = cms.double( 108.8 ) + ), + doEndcaps = cms.bool( True ), + doBarrel = cms.bool( False ) + ), + endcapClusterProducer = cms.string( "hltMulti5x5BasicClustersL1Seeded" ) +) +hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded = cms.EDProducer( "PreshowerClusterProducer", + assocSClusterCollection = cms.string( "" ), + preshStripEnergyCut = cms.double( 0.0 ), + preshClusterCollectionY = cms.string( "preshowerYClusters" ), + preshClusterCollectionX = cms.string( "preshowerXClusters" ), + etThresh = cms.double( 5.0 ), + preshRecHitProducer = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + endcapSClusterProducer = cms.InputTag( 'hltMulti5x5SuperClustersL1Seeded','multi5x5EndcapSuperClusters' ), + preshNclust = cms.int32( 4 ), + debugLevel = cms.string( "" ), + preshClusterEnergyCut = cms.double( 0.0 ), + preshSeededNstrip = cms.int32( 15 ) +) +hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded = cms.EDProducer( "EgammaSCCorrectionMaker", + corectedSuperClusterCollection = cms.string( "" ), + sigmaElectronicNoise = cms.double( 0.15 ), + superClusterAlgo = cms.string( "Multi5x5" ), + etThresh = cms.double( 1.0 ), + rawSuperClusterProducer = cms.InputTag( "hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded" ), + applyEnergyCorrection = cms.bool( True ), + isl_fCorrPset = cms.PSet( ), + VerbosityLevel = cms.string( "ERROR" ), + recHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + fix_fCorrPset = cms.PSet( + brLinearLowThr = cms.double( 0.6 ), + fBremVec = cms.vdouble( -0.04163, 0.08552, 0.95048, -0.002308, 1.077 ), + brLinearHighThr = cms.double( 6.0 ), + fEtEtaVec = cms.vdouble( 0.9746, -6.512, 0.0, 0.0, 0.02771, 4.983, 0.0, 0.0, -0.007288, -0.9446, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0 ) + ), + modeEE = cms.int32( 0 ), + modeEB = cms.int32( 0 ), + dyn_fCorrPset = cms.PSet( ), + energyCorrectorName = cms.string( "EcalClusterEnergyCorrectionObjectSpecific" ), + applyLocalContCorrection = cms.bool( False ), + localContCorrectorName = cms.string( "EcalBasicClusterLocalContCorrection" ), + crackCorrectorName = cms.string( "EcalClusterCrackCorrection" ), + applyCrackCorrection = cms.bool( False ), + hyb_fCorrPset = cms.PSet( ) +) +hltL1SeededRecoEcalCandidate = cms.EDProducer( "EgammaHLTRecoEcalCandidateProducers", + scIslandEndcapProducer = cms.InputTag( "hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded" ), + scHybridBarrelProducer = cms.InputTag( "hltCorrectedHybridSuperClustersL1Seeded" ), + recoEcalCandidateCollection = cms.string( "" ) +) +hltEGRegionalL1SingleEG22 = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'l1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG22" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'l1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 22.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltL1SeededPhotonHcalForHE = cms.EDProducer( "EgammaHLTHcalIsolationProducersRegional", + eMinHE = cms.double( 0.8 ), + hbheRecHitProducer = cms.InputTag( "hltHbhereco" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.14 ), + eMinHB = cms.double( 0.7 ), + innerCone = cms.double( 0.0 ), + etMinHE = cms.double( -1.0 ), + etMinHB = cms.double( -1.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( False ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1SeededR9ID = cms.EDProducer( "EgammaHLTR9IDProducer", + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + ecalRechitEB = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + ecalRechitEE = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1SeededPhotonEcalIso = cms.EDProducer( "EgammaHLTEcalRecIsolationProducer", + useNumCrystals = cms.bool( True ), + intRadiusEndcap = cms.double( 3.0 ), + etMinBarrel = cms.double( -9999.0 ), + effectiveAreaBarrel = cms.double( 0.101 ), + tryBoth = cms.bool( True ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + etMinEndcap = cms.double( 0.11 ), + eMinBarrel = cms.double( 0.095 ), + ecalEndcapRecHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + jurassicWidth = cms.double( 3.0 ), + intRadiusBarrel = cms.double( 3.0 ), + ecalBarrelRecHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + extRadius = cms.double( 0.3 ), + doRhoCorrection = cms.bool( False ), + useIsolEt = cms.bool( True ), + eMinEndcap = cms.double( -9999.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + subtract = cms.bool( False ), + rhoScale = cms.double( 1.0 ), + effectiveAreaEndcap = cms.double( 0.046 ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1SeededPhotonHcalIso = cms.EDProducer( "EgammaHLTHcalIsolationProducersRegional", + eMinHE = cms.double( 0.8 ), + hbheRecHitProducer = cms.InputTag( "hltHbhereco" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.29 ), + eMinHB = cms.double( 0.7 ), + innerCone = cms.double( 0.16 ), + etMinHE = cms.double( -1.0 ), + etMinHB = cms.double( -1.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( True ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( True ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 100.0, 1.0 ), + applyAdaptedPVCuts = cms.bool( False ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 100.0, 1.0 ), + copyTrajectories = cms.untracked.bool( False ), + vtxNumber = cms.int32( 0 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "offlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( False ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( False ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltL1SeededEgammaRegionalCTFFinalFitWithMaterial" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "NONE" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 100.0, 1.0 ), + d0_par1 = cms.vdouble( 100.0, 1.0 ), + res_par = cms.vdouble( 1.0, 0.0 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltL1SeededPhotonHollowTrackIsoWithId = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPFMET40Filter = cms.EDFilter( "HLTMhtFilter", + saveTags = cms.bool( True ), + mhtLabels = cms.VInputTag( 'hltPFMETProducer' ), + minMht = cms.vdouble( 40.0 ) +) +hltPrePhoton36R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 36.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton50R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 50.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton75R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 75.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton90R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 90.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1sL1SingleEG30 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG30" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "l1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + L1CollectionsTag = cms.InputTag( "l1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "gtDigis" ), + L1TechTriggerSeeding = cms.bool( False ) +) +hltPrePhoton135PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltEGRegionalL1SingleEG30 = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'l1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG30" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'l1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +hltEG135EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 135.0 ), + etcutEE = cms.double( 135.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton135HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG135EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton150PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltEG150EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 150.0 ), + etcutEE = cms.double( 150.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton150HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG150EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton160PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltEG160EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 160.0 ), + etcutEE = cms.double( 160.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton160HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG160EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton250NoHEPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltEG250EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( True ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 250.0 ), + etcutEE = cms.double( 250.0 ), + ncandcut = cms.int32( 1 ) +) +hltPrePhoton300NoHEPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltEG300EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( True ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 300.0 ), + etcutEE = cms.double( 300.0 ), + ncandcut = cms.int32( 1 ) +) +hltPrePhoton22R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltDiCaloJet20MJJ400AllJetsDEta3Filter = cms.EDFilter( "HLTCaloJetVBFFilter", + saveTags = cms.bool( True ), + minDeltaEta = cms.double( 3.0 ), + leadingJetOnly = cms.bool( False ), + maxEta = cms.double( 5.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrected" ), + etaOpposite = cms.bool( True ), + triggerType = cms.int32( 85 ), + minInvMass = cms.double( 400.0 ), + minPtHigh = cms.double( 20.0 ), + minPtLow = cms.double( 20.0 ) +) +hltPrePhoton36R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton50R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton75R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton90R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton135VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton150VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton160VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton250NoHEVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton300NoHEVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), + offset = cms.uint32( 0 ) +) hltPrePhysics = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "gtDigis" ), offset = cms.uint32( 0 ) @@ -14037,6 +15053,20 @@ HLTEle17Ele12Ele10CaloIdTrackIdSequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1EG12EG7EG5Filter + hltEle17Ele12Ele10CaloIdTrackIdEtLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdEtLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdEtLeg3Filter + hltEgammaClusterShape + hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg3Filter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltEle17Ele12Ele10CaloIdTrackIdHELeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdHELeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdHELeg3Filter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltMixedLayerPairs + hltEgammaElectronPixelSeeds + hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg3Filter + HLTGsfElectronSequence + hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg3Filter + hltEle17Ele12Ele10CaloIdTrackIdDetaLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdDetaLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdDetaLeg3Filter + hltEle17Ele12Ele10CaloIdTrackIdDphiLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdDphiLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdDphiLeg3Filter ) HLTMu23Ele12_Gsf = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1Mu12EG7Filter + hltMu23Ele12EtLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + hltEgammaClusterShape + hltMu23Ele12ClusterShapeLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltMu23Ele12HELegEle12GsfCaloIdTrackIdIsoMediumWPFilter + hltEgammaEcalPFClusterIso + hltMu23Ele12EcalIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTPFHcalClusteringForEgamma + hltEgammaHcalPFClusterIso + hltMu23Ele12HcalIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltMixedLayerPairs + hltEgammaElectronPixelSeeds + hltMu23Ele12PixelMatchLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTGsfElectronSequence + hltMu23Ele12GsfDetaLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + hltMu23Ele12GsfDphiLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTTrackReconstructionForIsoElectronIter02 + hltEgammaEleGsfTrackIso + hltMu23Ele12GsfTrackIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter ) HLTMu8Ele23_Gsf = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1Mu3p5EG12ORL1MuOpenEG12Filter + hltMu8Ele23EtLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + hltEgammaClusterShape + hltMu8Ele23ClusterShapeLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltMu8Ele23HELegEle23GsfCaloIdTrackIdIsoMediumWPFilter + hltEgammaEcalPFClusterIso + hltMu8Ele23EcalIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTPFHcalClusteringForEgamma + hltEgammaHcalPFClusterIso + hltMu8Ele23HcalIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltMixedLayerPairs + hltEgammaElectronPixelSeeds + hltMu8Ele23PixelMatchLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTGsfElectronSequence + hltMu8Ele23GsfDetaLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + hltMu8Ele23GsfDphiLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTTrackReconstructionForIsoElectronIter02 + hltEgammaEleGsfTrackIso + hltMu8Ele23GsfTrackIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter ) +HLTMulti5x5SuperClusterL1Seeded = cms.Sequence( hltMulti5x5BasicClustersL1Seeded + hltMulti5x5SuperClustersL1Seeded + hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded + hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded ) +HLTL1SeededEcalClustersSequence = cms.Sequence( hltHybridSuperClustersL1Seeded + hltCorrectedHybridSuperClustersL1Seeded + HLTMulti5x5SuperClusterL1Seeded ) +HLTDoLocalHcalWithoutHOSequence = cms.Sequence( hltHcalDigis + hltHbhereco + hltHfreco ) +HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId = cms.Sequence( HLTL1SeededEgammaRegionalRecoTrackerSequence + hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity ) +HLTPhoton22R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton22R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTPhoton36R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton36R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTPhoton50R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton50R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTPhoton75R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton75R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTPhoton90R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton90R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTSinglePhoton135Sequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG135EtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton135HEFilter ) +HLTSinglePhoton150Sequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG150EtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton150HEFilter ) +HLTSinglePhoton160Sequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG160EtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton160HEFilter ) +HLTSinglePhoton250NoHESequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG250EtFilter ) +HLTSinglePhoton300NoHESequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG300EtFilter ) HLTriggerFirstPath = cms.Path( hltGetConditions + hltGetRaw + hltBoolFalse ) HLT_Mu17_NoFilters_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleMu12 + hltPreMu17NoFilters + hltL1fL1sMu12L1Filtered0 + HLTL2muonrecoSequence + hltL2fL1sMu12L2Filtered12 + HLTL3NoFiltersmuonrecoSequence + hltL3NoFiltersfL1sMu12L3Filtered17 + cms.SequencePlaceholder( "HLTEndSequence" ) ) @@ -14088,15 +15118,31 @@ HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1 = cms.Path( HLTBeginSequence + hltL1sL1EG12EG7EG5 + hltPreEle17Ele12Ele10CaloIdTrackId + HLTEle17Ele12Ele10CaloIdTrackIdSequence + cms.SequencePlaceholder( "HLTEndSequence" ) ) HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1 = cms.Path( HLTBeginSequence + hltL1sL1Mu12EG7 + hltPreMu23TrkIsoVVLEle12GsfCaloIdTrackIdIsoMediumWP + hltL1Mu12EG7L1MuFiltered0 + HLTL2muonrecoSequence + hltL1Mu12EG7L2MuFiltered0 + HLTL3muonrecoSequence + hltL1Mu12EG7L3MuFiltered23 + HLTL3muontrkisovvlSequence + hltL1Mu12EG7L3IsoMuFiltered23 + HLTMu23Ele12_Gsf + cms.SequencePlaceholder( "HLTEndSequence" ) ) HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1 = cms.Path( HLTBeginSequence + hltL1sL1Mu3p5EG12ORL1MuOpenEG12 + hltPreMu8TrkIsoVVLEle23GsfCaloIdTrackIdIsoMediumWP + hltL1sL1Mu3p5EG12ORL1MuOpenEG12L1Filtered0 + HLTL2muonrecoSequence + hltL1sL1Mu3p5EG12ORL1MuOpenEG12L2Filtered5 + HLTL3muonrecoSequence + hltL1sL1Mu3p5EG12ORL1MuOpenEG12L3Filtered8 + HLTL3muontrkisovvlSequence + hltL1sL1Mu3p5EG12ORL1MuOpenEG12L3IsoFiltered8 + HLTMu8Ele23_Gsf + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton22R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton22R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton36R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton36R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton50R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton50R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton75R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton75R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton90R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton90R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon135_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton135PFMET40 + HLTSinglePhoton135Sequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon150_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton150PFMET40 + HLTSinglePhoton150Sequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon160_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton160PFMET40 + HLTSinglePhoton160Sequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon250_NoHE_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton250NoHEPFMET40 + HLTSinglePhoton250NoHESequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon300_NoHE_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton300NoHEPFMET40 + HLTSinglePhoton300NoHESequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton22R9Id90HE10Iso40EBOnlyVBF + HLTPhoton22R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton36R9Id90HE10Iso40EBOnlyVBF + HLTPhoton36R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton50R9Id90HE10Iso40EBOnlyVBF + HLTPhoton50R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton75R9Id90HE10Iso40EBOnlyVBF + HLTPhoton75R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton90R9Id90HE10Iso40EBOnlyVBF + HLTPhoton90R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon135_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton135VBF + HLTSinglePhoton135Sequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon150_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton150VBF + HLTSinglePhoton150Sequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon160_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton160VBF + HLTSinglePhoton160Sequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon250_NoHE_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton250NoHEVBF + HLTSinglePhoton250NoHESequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) +HLT_Photon300_NoHE_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton300NoHEVBF + HLTSinglePhoton300NoHESequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + cms.SequencePlaceholder( "HLTEndSequence" ) ) HLT_Physics_v1 = cms.Path( HLTBeginSequence + hltPrePhysics + cms.SequencePlaceholder( "HLTEndSequence" ) ) HLTriggerFinalPath = cms.Path( HLTBeginSequence + hltScalersRawToDigi + hltFEDSelector + hltTriggerSummaryAOD + hltTriggerSummaryRAW ) -HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu17_NoFilters_v1, HLT_Mu40_v1, HLT_IsoMu24_IterTrk02_v1, HLT_IsoTkMu24_IterTrk02_v1, HLT_DoubleMu4_Jpsi_Displaced_v1, HLT_Mu17_Mu8_v1, HLT_Mu17_TkMu8_v1, HLT_Mu30_TkMu11_v1, HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_v1, HLT_Mu17_TrkIsoVVL_TkMu8_TrkIsoVVL_v1, HLT_DoubleMu4_3_Bs_v1, HLT_DoubleMu4_3_Jpsi_Displaced_v1, HLT_Dimuon20_Jpsi_v1, HLT_Dimuon13_PsiPrime_v1, HLT_Dimuon13_Upsilon_v1, HLT_Mu25_TkMu0_dEta18_Onia_v1, HLT_DoubleMu4_JpsiTrk_Displaced_v1, HLT_DoubleMu4_PsiPrimeTrk_Displaced_v1, HLT_DoubleMu4_LowMassNonResonantTrk_Displaced_v1, HLT_Ele27_WP80_Gsf_v1, HLT_Ele17_Ele8_Gsf_v1, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1, HLT_PFJet40_v1, HLT_PFJet260_v1, HLT_CaloJet260_v1, HLT_HT650_v1, HLT_PFHT650_v1, HLT_IsoMu17_eta2p1_LooseIsoPFTau20_v1, HLT_Ele22_eta2p1_WP90Rho_Gsf_LooseIsoPFTau20_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v1, HLT_LooseIsoPFTau40_Trk25_Prong1_eta2p1_PFMET65_v1, HLT_PFMET180_NoiseCleaned_v1, HLT_PFchMET90_NoiseCleaned_v1, HLT_BTagCSV07_v1, HLT_IterativeTracking_v1, HLT_ReducedIterativeTracking_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_CentralPFJet30_BTagCSV_v1, HLT_Ele27_WP80_Gsf_CentralPFJet30_BTagCSV_v1, HLT_Ele23_Ele12_CaloId_TrackId_Iso_v1, HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1, HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Physics_v1, HLTriggerFinalPath )) - -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in locals(): - hltHfreco.setNoiseFlags = cms.bool( True ) +HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu17_NoFilters_v1, HLT_Mu40_v1, HLT_IsoMu24_IterTrk02_v1, HLT_IsoTkMu24_IterTrk02_v1, HLT_DoubleMu4_Jpsi_Displaced_v1, HLT_Mu17_Mu8_v1, HLT_Mu17_TkMu8_v1, HLT_Mu30_TkMu11_v1, HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_v1, HLT_Mu17_TrkIsoVVL_TkMu8_TrkIsoVVL_v1, HLT_DoubleMu4_3_Bs_v1, HLT_DoubleMu4_3_Jpsi_Displaced_v1, HLT_Dimuon20_Jpsi_v1, HLT_Dimuon13_PsiPrime_v1, HLT_Dimuon13_Upsilon_v1, HLT_Mu25_TkMu0_dEta18_Onia_v1, HLT_DoubleMu4_JpsiTrk_Displaced_v1, HLT_DoubleMu4_PsiPrimeTrk_Displaced_v1, HLT_DoubleMu4_LowMassNonResonantTrk_Displaced_v1, HLT_Ele27_WP80_Gsf_v1, HLT_Ele17_Ele8_Gsf_v1, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1, HLT_PFJet40_v1, HLT_PFJet260_v1, HLT_CaloJet260_v1, HLT_HT650_v1, HLT_PFHT650_v1, HLT_IsoMu17_eta2p1_LooseIsoPFTau20_v1, HLT_Ele22_eta2p1_WP90Rho_Gsf_LooseIsoPFTau20_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v1, HLT_LooseIsoPFTau40_Trk25_Prong1_eta2p1_PFMET65_v1, HLT_PFMET180_NoiseCleaned_v1, HLT_PFchMET90_NoiseCleaned_v1, HLT_BTagCSV07_v1, HLT_IterativeTracking_v1, HLT_ReducedIterativeTracking_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_CentralPFJet30_BTagCSV_v1, HLT_Ele27_WP80_Gsf_CentralPFJet30_BTagCSV_v1, HLT_Ele23_Ele12_CaloId_TrackId_Iso_v1, HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1, HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon135_PFMET40_v1, HLT_Photon150_PFMET40_v1, HLT_Photon160_PFMET40_v1, HLT_Photon250_NoHE_PFMET40_v1, HLT_Photon300_NoHE_PFMET40_v1, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon135_VBF_v1, HLT_Photon150_VBF_v1, HLT_Photon160_VBF_v1, HLT_Photon250_NoHE_VBF_v1, HLT_Photon300_NoHE_VBF_v1, HLT_Physics_v1, HLTriggerFinalPath )) # CMSSW version specific customizations import os diff --git a/HLTrigger/Configuration/python/HLT_GRun_cff.py b/HLTrigger/Configuration/python/HLT_GRun_cff.py index 27435e871b4ba..baa6d91037c6e 100644 --- a/HLTrigger/Configuration/python/HLT_GRun_cff.py +++ b/HLTrigger/Configuration/python/HLT_GRun_cff.py @@ -1,10 +1,10 @@ -# /dev/CMSSW_7_1_1/GRun/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/GRun/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/GRun/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/GRun/V87') ) HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -498,8 +498,28 @@ 'HLT_PFJet40_v1', 'HLT_PFMET180_NoiseCleaned_v1', 'HLT_PFchMET90_NoiseCleaned_v1', + 'HLT_Photon135_PFMET40_v1', + 'HLT_Photon135_VBF_v1', + 'HLT_Photon150_PFMET40_v1', + 'HLT_Photon150_VBF_v1', + 'HLT_Photon160_PFMET40_v1', + 'HLT_Photon160_VBF_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon250_NoHE_PFMET40_v1', + 'HLT_Photon250_NoHE_VBF_v1', 'HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1', + 'HLT_Photon300_NoHE_PFMET40_v1', + 'HLT_Photon300_NoHE_VBF_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1', 'HLT_Physics_v1', 'HLT_ReducedIterativeTracking_v1' ) ) @@ -23963,6 +23983,1078 @@ candTag = cms.InputTag( "hltMu8Ele23GsfDphiLegEle23GsfCaloIdTrackIdIsoMediumWPFilter" ), nonIsoTag = cms.InputTag( "" ) ) +hltPrePhoton22R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltHybridSuperClustersL1Seeded = cms.EDProducer( "EgammaHLTHybridClusterProducer", + xi = cms.double( 0.0 ), + regionEtaMargin = cms.double( 0.14 ), + regionPhiMargin = cms.double( 0.4 ), + severityRecHitThreshold = cms.double( 4.0 ), + RecHitFlagToBeExcluded = cms.vstring( ), + ecalhitcollection = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + eThreshA = cms.double( 0.003 ), + basicclusterCollection = cms.string( "" ), + eThreshB = cms.double( 0.1 ), + dynamicPhiRoad = cms.bool( False ), + useEtForXi = cms.bool( True ), + l1UpperThr = cms.double( 999.0 ), + excludeFlagged = cms.bool( True ), + posCalcParameters = cms.PSet( + T0_barl = cms.double( 7.4 ), + LogWeighted = cms.bool( True ), + T0_endc = cms.double( 3.1 ), + T0_endcPresh = cms.double( 1.2 ), + W0 = cms.double( 4.2 ), + X0 = cms.double( 0.89 ) + ), + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + eseed = cms.double( 0.35 ), + ethresh = cms.double( 0.1 ), + ewing = cms.double( 0.0 ), + RecHitSeverityToBeExcluded = cms.vstring( 'kWeird' ), + step = cms.int32( 17 ), + debugLevel = cms.string( "INFO" ), + dynamicEThresh = cms.bool( False ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ), + superclusterCollection = cms.string( "" ), + HybridBarrelSeedThr = cms.double( 1.5 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ) +) +hltCorrectedHybridSuperClustersL1Seeded = cms.EDProducer( "EgammaSCCorrectionMaker", + corectedSuperClusterCollection = cms.string( "" ), + sigmaElectronicNoise = cms.double( 0.03 ), + superClusterAlgo = cms.string( "Hybrid" ), + etThresh = cms.double( 1.0 ), + rawSuperClusterProducer = cms.InputTag( "hltHybridSuperClustersL1Seeded" ), + applyEnergyCorrection = cms.bool( True ), + isl_fCorrPset = cms.PSet( ), + VerbosityLevel = cms.string( "ERROR" ), + recHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + fix_fCorrPset = cms.PSet( ), + modeEE = cms.int32( 0 ), + modeEB = cms.int32( 0 ), + dyn_fCorrPset = cms.PSet( ), + energyCorrectorName = cms.string( "EcalClusterEnergyCorrectionObjectSpecific" ), + applyLocalContCorrection = cms.bool( False ), + localContCorrectorName = cms.string( "EcalBasicClusterLocalContCorrection" ), + crackCorrectorName = cms.string( "EcalClusterCrackCorrection" ), + applyCrackCorrection = cms.bool( False ), + hyb_fCorrPset = cms.PSet( + brLinearLowThr = cms.double( 1.1 ), + fBremVec = cms.vdouble( -0.05208, 0.1331, 0.9196, -5.735E-4, 1.343 ), + brLinearHighThr = cms.double( 8.0 ), + fEtEtaVec = cms.vdouble( 1.0012, -0.5714, 0.0, 0.0, 0.0, 0.5549, 12.74, 1.0448, 0.0, 0.0, 0.0, 0.0, 8.0, 1.023, -0.00181, 0.0, 0.0 ) + ) +) +hltMulti5x5BasicClustersL1Seeded = cms.EDProducer( "EgammaHLTMulti5x5ClusterProducer", + l1LowerThr = cms.double( 5.0 ), + Multi5x5BarrelSeedThr = cms.double( 0.5 ), + Multi5x5EndcapSeedThr = cms.double( 0.18 ), + endcapHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + barrelClusterCollection = cms.string( "notused" ), + regionEtaMargin = cms.double( 0.3 ), + regionPhiMargin = cms.double( 0.4 ), + RecHitFlagToBeExcluded = cms.vstring( ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + posCalcParameters = cms.PSet( + T0_barl = cms.double( 7.4 ), + LogWeighted = cms.bool( True ), + T0_endc = cms.double( 3.1 ), + T0_endcPresh = cms.double( 1.2 ), + W0 = cms.double( 4.2 ), + X0 = cms.double( 0.89 ) + ), + VerbosityLevel = cms.string( "ERROR" ), + doIsolated = cms.bool( True ), + barrelHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ), + doEndcaps = cms.bool( True ), + doBarrel = cms.bool( False ), + endcapClusterCollection = cms.string( "multi5x5EndcapBasicClusters" ), + l1UpperThr = cms.double( 999.0 ) +) +hltMulti5x5SuperClustersL1Seeded = cms.EDProducer( "Multi5x5SuperClusterProducer", + barrelSuperclusterCollection = cms.string( "multi5x5BarrelSuperClusters" ), + endcapEtaSearchRoad = cms.double( 0.14 ), + dynamicPhiRoad = cms.bool( False ), + endcapClusterTag = cms.InputTag( 'hltMulti5x5BasicClustersL1Seeded','multi5x5EndcapBasicClusters' ), + barrelPhiSearchRoad = cms.double( 0.8 ), + endcapPhiSearchRoad = cms.double( 0.6 ), + seedTransverseEnergyThreshold = cms.double( 1.0 ), + endcapSuperclusterCollection = cms.string( "multi5x5EndcapSuperClusters" ), + barrelEtaSearchRoad = cms.double( 0.06 ), + barrelClusterTag = cms.InputTag( 'hltMulti5x5BasicClustersL1Seeded','multi5x5BarrelBasicClusters' ), + doBarrel = cms.bool( False ), + doEndcaps = cms.bool( True ), + bremRecoveryPset = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( + a = cms.double( 47.85 ), + c = cms.double( 0.1201 ), + b = cms.double( 108.8 ) + ), + doEndcaps = cms.bool( True ), + doBarrel = cms.bool( False ) + ), + endcapClusterProducer = cms.string( "hltMulti5x5BasicClustersL1Seeded" ) +) +hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded = cms.EDProducer( "PreshowerClusterProducer", + assocSClusterCollection = cms.string( "" ), + preshStripEnergyCut = cms.double( 0.0 ), + preshClusterCollectionY = cms.string( "preshowerYClusters" ), + preshClusterCollectionX = cms.string( "preshowerXClusters" ), + etThresh = cms.double( 5.0 ), + preshRecHitProducer = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + endcapSClusterProducer = cms.InputTag( 'hltMulti5x5SuperClustersL1Seeded','multi5x5EndcapSuperClusters' ), + preshNclust = cms.int32( 4 ), + debugLevel = cms.string( "" ), + preshClusterEnergyCut = cms.double( 0.0 ), + preshSeededNstrip = cms.int32( 15 ) +) +hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded = cms.EDProducer( "EgammaSCCorrectionMaker", + corectedSuperClusterCollection = cms.string( "" ), + sigmaElectronicNoise = cms.double( 0.15 ), + superClusterAlgo = cms.string( "Multi5x5" ), + etThresh = cms.double( 1.0 ), + rawSuperClusterProducer = cms.InputTag( "hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded" ), + applyEnergyCorrection = cms.bool( True ), + isl_fCorrPset = cms.PSet( ), + VerbosityLevel = cms.string( "ERROR" ), + recHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + fix_fCorrPset = cms.PSet( + brLinearLowThr = cms.double( 0.6 ), + fBremVec = cms.vdouble( -0.04163, 0.08552, 0.95048, -0.002308, 1.077 ), + brLinearHighThr = cms.double( 6.0 ), + fEtEtaVec = cms.vdouble( 0.9746, -6.512, 0.0, 0.0, 0.02771, 4.983, 0.0, 0.0, -0.007288, -0.9446, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0 ) + ), + modeEE = cms.int32( 0 ), + modeEB = cms.int32( 0 ), + dyn_fCorrPset = cms.PSet( ), + energyCorrectorName = cms.string( "EcalClusterEnergyCorrectionObjectSpecific" ), + applyLocalContCorrection = cms.bool( False ), + localContCorrectorName = cms.string( "EcalBasicClusterLocalContCorrection" ), + crackCorrectorName = cms.string( "EcalClusterCrackCorrection" ), + applyCrackCorrection = cms.bool( False ), + hyb_fCorrPset = cms.PSet( ) +) +hltL1SeededRecoEcalCandidate = cms.EDProducer( "EgammaHLTRecoEcalCandidateProducers", + scIslandEndcapProducer = cms.InputTag( "hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded" ), + scHybridBarrelProducer = cms.InputTag( "hltCorrectedHybridSuperClustersL1Seeded" ), + recoEcalCandidateCollection = cms.string( "" ) +) +hltEGRegionalL1SingleEG22 = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG22" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 22.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltL1SeededPhotonHcalForHE = cms.EDProducer( "EgammaHLTHcalIsolationProducersRegional", + eMinHE = cms.double( 0.8 ), + hbheRecHitProducer = cms.InputTag( "hltHbhereco" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.14 ), + eMinHB = cms.double( 0.7 ), + innerCone = cms.double( 0.0 ), + etMinHE = cms.double( -1.0 ), + etMinHB = cms.double( -1.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( False ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1SeededR9ID = cms.EDProducer( "EgammaHLTR9IDProducer", + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + ecalRechitEB = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + ecalRechitEE = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1SeededPhotonEcalIso = cms.EDProducer( "EgammaHLTEcalRecIsolationProducer", + useNumCrystals = cms.bool( True ), + intRadiusEndcap = cms.double( 3.0 ), + etMinBarrel = cms.double( -9999.0 ), + effectiveAreaBarrel = cms.double( 0.101 ), + tryBoth = cms.bool( True ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + etMinEndcap = cms.double( 0.11 ), + eMinBarrel = cms.double( 0.095 ), + ecalEndcapRecHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + jurassicWidth = cms.double( 3.0 ), + intRadiusBarrel = cms.double( 3.0 ), + ecalBarrelRecHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + extRadius = cms.double( 0.3 ), + doRhoCorrection = cms.bool( False ), + useIsolEt = cms.bool( True ), + eMinEndcap = cms.double( -9999.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + subtract = cms.bool( False ), + rhoScale = cms.double( 1.0 ), + effectiveAreaEndcap = cms.double( 0.046 ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1SeededPhotonHcalIso = cms.EDProducer( "EgammaHLTHcalIsolationProducersRegional", + eMinHE = cms.double( 0.8 ), + hbheRecHitProducer = cms.InputTag( "hltHbhereco" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.29 ), + eMinHB = cms.double( 0.7 ), + innerCone = cms.double( 0.16 ), + etMinHE = cms.double( -1.0 ), + etMinHB = cms.double( -1.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( True ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1SeededEgammaRegionalPixelSeedGenerator = cms.EDProducer( "EgammaHLTRegionalPixelSeedGeneratorProducers", + deltaPhiRegion = cms.double( 0.3 ), + vertexZ = cms.double( 0.0 ), + originHalfLength = cms.double( 15.0 ), + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseZInVertex = cms.bool( False ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + SeedingLayers = cms.InputTag( "hltPixelLayerPairs" ) + ), + deltaEtaRegion = cms.double( 0.3 ), + ptMin = cms.double( 1.5 ), + candTagEle = cms.InputTag( "pixelMatchElectrons" ), + candTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + TTRHBuilder = cms.string( "WithTrackAngle" ), + originRadius = cms.double( 0.02 ) +) +hltL1SeededEgammaRegionalCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltL1SeededEgammaRegionalPixelSeedGenerator" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPCkfTrajectoryBuilder" ) +) +hltL1SeededEgammaRegionalCTFFinalFitWithMaterial = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL1SeededEgammaRegionalCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "hltEgammaRegionalCTFFinalFitWithMaterial" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( False ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( True ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 100.0, 1.0 ), + applyAdaptedPVCuts = cms.bool( False ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 100.0, 1.0 ), + copyTrajectories = cms.untracked.bool( False ), + vtxNumber = cms.int32( 0 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( False ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( False ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltL1SeededEgammaRegionalCTFFinalFitWithMaterial" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "NONE" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 100.0, 1.0 ), + d0_par1 = cms.vdouble( 100.0, 1.0 ), + res_par = cms.vdouble( 1.0, 0.0 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltL1SeededPhotonHollowTrackIsoWithId = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +hltPhoton22R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPFMET40Filter = cms.EDFilter( "HLTMhtFilter", + saveTags = cms.bool( True ), + mhtLabels = cms.VInputTag( 'hltPFMETProducer' ), + minMht = cms.vdouble( 40.0 ) +) +hltPrePhoton36R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 36.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton36R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton50R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 50.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton50R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton75R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 75.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton75R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton90R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 90.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPhoton90R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1sL1SingleEG30 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG30" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +hltPrePhoton135PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltEGRegionalL1SingleEG30 = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG30" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +hltEG135EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 135.0 ), + etcutEE = cms.double( 135.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton135HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG135EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton150PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltEG150EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 150.0 ), + etcutEE = cms.double( 150.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton150HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG150EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton160PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltEG160EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 160.0 ), + etcutEE = cms.double( 160.0 ), + ncandcut = cms.int32( 1 ) +) +hltPhoton160HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG160EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPrePhoton250NoHEPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltEG250EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( True ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 250.0 ), + etcutEE = cms.double( 250.0 ), + ncandcut = cms.int32( 1 ) +) +hltPrePhoton300NoHEPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltEG300EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( True ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 300.0 ), + etcutEE = cms.double( 300.0 ), + ncandcut = cms.int32( 1 ) +) +hltPrePhoton22R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltDiCaloJet20MJJ400AllJetsDEta3Filter = cms.EDFilter( "HLTCaloJetVBFFilter", + saveTags = cms.bool( True ), + minDeltaEta = cms.double( 3.0 ), + leadingJetOnly = cms.bool( False ), + maxEta = cms.double( 5.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrected" ), + etaOpposite = cms.bool( True ), + triggerType = cms.int32( 85 ), + minInvMass = cms.double( 400.0 ), + minPtHigh = cms.double( 20.0 ), + minPtLow = cms.double( 20.0 ) +) +hltPrePhoton36R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton50R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton75R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton90R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton135VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton150VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton160VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton250NoHEVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltPrePhoton300NoHEVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) hltPrePhysics = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) @@ -24152,6 +25244,21 @@ HLTEle17Ele12Ele10CaloIdTrackIdSequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1EG12EG7EG5Filter + hltEle17Ele12Ele10CaloIdTrackIdEtLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdEtLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdEtLeg3Filter + hltEgammaClusterShape + hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg3Filter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltEle17Ele12Ele10CaloIdTrackIdHELeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdHELeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdHELeg3Filter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltMixedLayerPairs + hltEgammaElectronPixelSeeds + hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg3Filter + HLTGsfElectronSequence + hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg3Filter + hltEle17Ele12Ele10CaloIdTrackIdDetaLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdDetaLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdDetaLeg3Filter + hltEle17Ele12Ele10CaloIdTrackIdDphiLeg1Filter + hltEle17Ele12Ele10CaloIdTrackIdDphiLeg2Filter + hltEle17Ele12Ele10CaloIdTrackIdDphiLeg3Filter ) HLTMu23Ele12_Gsf = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1Mu12EG7Filter + hltMu23Ele12EtLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + hltEgammaClusterShape + hltMu23Ele12ClusterShapeLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltMu23Ele12HELegEle12GsfCaloIdTrackIdIsoMediumWPFilter + hltEgammaEcalPFClusterIso + hltMu23Ele12EcalIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTPFHcalClusteringForEgamma + hltEgammaHcalPFClusterIso + hltMu23Ele12HcalIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltMixedLayerPairs + hltEgammaElectronPixelSeeds + hltMu23Ele12PixelMatchLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTGsfElectronSequence + hltMu23Ele12GsfDetaLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + hltMu23Ele12GsfDphiLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + HLTTrackReconstructionForIsoElectronIter02 + hltEgammaEleGsfTrackIso + hltMu23Ele12GsfTrackIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter ) HLTMu8Ele23_Gsf = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1Mu3p5EG12ORL1MuOpenEG12Filter + hltMu8Ele23EtLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + hltEgammaClusterShape + hltMu8Ele23ClusterShapeLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltMu8Ele23HELegEle23GsfCaloIdTrackIdIsoMediumWPFilter + hltEgammaEcalPFClusterIso + hltMu8Ele23EcalIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTPFHcalClusteringForEgamma + hltEgammaHcalPFClusterIso + hltMu8Ele23HcalIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltMixedLayerPairs + hltEgammaElectronPixelSeeds + hltMu8Ele23PixelMatchLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTGsfElectronSequence + hltMu8Ele23GsfDetaLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + hltMu8Ele23GsfDphiLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + HLTTrackReconstructionForIsoElectronIter02 + hltEgammaEleGsfTrackIso + hltMu8Ele23GsfTrackIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter ) +HLTMulti5x5SuperClusterL1Seeded = cms.Sequence( hltMulti5x5BasicClustersL1Seeded + hltMulti5x5SuperClustersL1Seeded + hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded + hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded ) +HLTL1SeededEcalClustersSequence = cms.Sequence( hltHybridSuperClustersL1Seeded + hltCorrectedHybridSuperClustersL1Seeded + HLTMulti5x5SuperClusterL1Seeded ) +HLTDoLocalHcalWithoutHOSequence = cms.Sequence( hltHcalDigis + hltHbhereco + hltHfreco ) +HLTL1SeededEgammaRegionalRecoTrackerSequence = cms.Sequence( hltPixelLayerPairs + hltL1SeededEgammaRegionalPixelSeedGenerator + hltL1SeededEgammaRegionalCkfTrackCandidates + hltL1SeededEgammaRegionalCTFFinalFitWithMaterial ) +HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId = cms.Sequence( HLTL1SeededEgammaRegionalRecoTrackerSequence + hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity ) +HLTPhoton22R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton22R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTPhoton36R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton36R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTPhoton50R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton50R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTPhoton75R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton75R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTPhoton90R9Id90HE10Iso40EBOnlySequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG22 + hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter + hltL1SeededR9ID + hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter + hltL1SeededPhotonEcalIso + hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter + hltL1SeededPhotonHcalIso + hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + hltL1SeededPhotonHollowTrackIsoWithId + hltPhoton90R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +HLTSinglePhoton135Sequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG135EtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton135HEFilter ) +HLTSinglePhoton150Sequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG150EtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton150HEFilter ) +HLTSinglePhoton160Sequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG160EtFilter + HLTDoLocalHcalWithoutHOSequence + hltL1SeededPhotonHcalForHE + hltPhoton160HEFilter ) +HLTSinglePhoton250NoHESequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG250EtFilter ) +HLTSinglePhoton300NoHESequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTL1SeededEcalClustersSequence + hltL1SeededRecoEcalCandidate + hltEGRegionalL1SingleEG30 + hltEG300EtFilter ) HLTriggerFirstPath = cms.Path( hltGetConditions + hltGetRaw + hltBoolFalse ) HLT_Mu17_NoFilters_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleMu12 + hltPreMu17NoFilters + hltL1fL1sMu12L1Filtered0 + HLTL2muonrecoSequence + hltL2fL1sMu12L2Filtered12 + HLTL3NoFiltersmuonrecoSequence + hltL3NoFiltersfL1sMu12L3Filtered17 + HLTEndSequence ) @@ -24204,16 +25311,32 @@ HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1 = cms.Path( HLTBeginSequence + hltL1sL1EG12EG7EG5 + hltPreEle17Ele12Ele10CaloIdTrackId + HLTEle17Ele12Ele10CaloIdTrackIdSequence + HLTEndSequence ) HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1 = cms.Path( HLTBeginSequence + hltL1sL1Mu12EG7 + hltPreMu23TrkIsoVVLEle12GsfCaloIdTrackIdIsoMediumWP + hltL1Mu12EG7L1MuFiltered0 + HLTL2muonrecoSequence + hltL1Mu12EG7L2MuFiltered0 + HLTL3muonrecoSequence + hltL1Mu12EG7L3MuFiltered23 + HLTL3muontrkisovvlSequence + hltL1Mu12EG7L3IsoMuFiltered23 + HLTMu23Ele12_Gsf + HLTEndSequence ) HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1 = cms.Path( HLTBeginSequence + hltL1sL1Mu3p5EG12ORL1MuOpenEG12 + hltPreMu8TrkIsoVVLEle23GsfCaloIdTrackIdIsoMediumWP + hltL1sL1Mu3p5EG12ORL1MuOpenEG12L1Filtered0 + HLTL2muonrecoSequence + hltL1sL1Mu3p5EG12ORL1MuOpenEG12L2Filtered5 + HLTL3muonrecoSequence + hltL1sL1Mu3p5EG12ORL1MuOpenEG12L3Filtered8 + HLTL3muontrkisovvlSequence + hltL1sL1Mu3p5EG12ORL1MuOpenEG12L3IsoFiltered8 + HLTMu8Ele23_Gsf + HLTEndSequence ) +HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton22R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton22R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton36R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton36R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton50R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton50R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton75R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton75R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton90R9Id90HE10Iso40EBOnlyPFMET40 + HLTPhoton90R9Id90HE10Iso40EBOnlySequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon135_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton135PFMET40 + HLTSinglePhoton135Sequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon150_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton150PFMET40 + HLTSinglePhoton150Sequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon160_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton160PFMET40 + HLTSinglePhoton160Sequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon250_NoHE_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton250NoHEPFMET40 + HLTSinglePhoton250NoHESequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon300_NoHE_PFMET40_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton300NoHEPFMET40 + HLTSinglePhoton300NoHESequence + HLTAK4PFJetsSequence + hltPFMETProducer + hltPFMET40Filter + HLTEndSequence ) +HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton22R9Id90HE10Iso40EBOnlyVBF + HLTPhoton22R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton36R9Id90HE10Iso40EBOnlyVBF + HLTPhoton36R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton50R9Id90HE10Iso40EBOnlyVBF + HLTPhoton50R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton75R9Id90HE10Iso40EBOnlyVBF + HLTPhoton75R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG22 + hltPrePhoton90R9Id90HE10Iso40EBOnlyVBF + HLTPhoton90R9Id90HE10Iso40EBOnlySequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon135_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton135VBF + HLTSinglePhoton135Sequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon150_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton150VBF + HLTSinglePhoton150Sequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon160_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton160VBF + HLTSinglePhoton160Sequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon250_NoHE_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton250NoHEVBF + HLTSinglePhoton250NoHESequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) +HLT_Photon300_NoHE_VBF_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG30 + hltPrePhoton300NoHEVBF + HLTSinglePhoton300NoHESequence + HLTAK4CaloJetsSequence + hltDiCaloJet20MJJ400AllJetsDEta3Filter + HLTEndSequence ) HLT_Physics_v1 = cms.Path( HLTBeginSequence + hltPrePhysics + HLTEndSequence ) HLTriggerFinalPath = cms.Path( hltGtDigis + hltScalersRawToDigi + hltFEDSelector + hltTriggerSummaryAOD + hltTriggerSummaryRAW ) HLTAnalyzerEndpath = cms.EndPath( hltL1GtTrigReport + hltTrigReport ) -HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu17_NoFilters_v1, HLT_Mu40_v1, HLT_IsoMu24_IterTrk02_v1, HLT_IsoTkMu24_IterTrk02_v1, HLT_DoubleMu4_Jpsi_Displaced_v1, HLT_Mu17_Mu8_v1, HLT_Mu17_TkMu8_v1, HLT_Mu30_TkMu11_v1, HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_v1, HLT_Mu17_TrkIsoVVL_TkMu8_TrkIsoVVL_v1, HLT_DoubleMu4_3_Bs_v1, HLT_DoubleMu4_3_Jpsi_Displaced_v1, HLT_Dimuon20_Jpsi_v1, HLT_Dimuon13_PsiPrime_v1, HLT_Dimuon13_Upsilon_v1, HLT_Mu25_TkMu0_dEta18_Onia_v1, HLT_DoubleMu4_JpsiTrk_Displaced_v1, HLT_DoubleMu4_PsiPrimeTrk_Displaced_v1, HLT_DoubleMu4_LowMassNonResonantTrk_Displaced_v1, HLT_Ele27_WP80_Gsf_v1, HLT_Ele17_Ele8_Gsf_v1, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1, HLT_PFJet40_v1, HLT_PFJet260_v1, HLT_CaloJet260_v1, HLT_HT650_v1, HLT_PFHT650_v1, HLT_JetE50_NoBPTX3BX_NoHalo_v1, HLT_IsoMu17_eta2p1_LooseIsoPFTau20_v1, HLT_Ele22_eta2p1_WP90Rho_Gsf_LooseIsoPFTau20_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v1, HLT_LooseIsoPFTau40_Trk25_Prong1_eta2p1_PFMET65_v1, HLT_PFMET180_NoiseCleaned_v1, HLT_PFchMET90_NoiseCleaned_v1, HLT_BTagCSV07_v1, HLT_IterativeTracking_v1, HLT_ReducedIterativeTracking_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_CentralPFJet30_BTagCSV_v1, HLT_Ele27_WP80_Gsf_CentralPFJet30_BTagCSV_v1, HLT_Ele23_Ele12_CaloId_TrackId_Iso_v1, HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1, HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Physics_v1, HLTriggerFinalPath, HLTAnalyzerEndpath )) - -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in locals(): - hltHfreco.setNoiseFlags = cms.bool( True ) +HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu17_NoFilters_v1, HLT_Mu40_v1, HLT_IsoMu24_IterTrk02_v1, HLT_IsoTkMu24_IterTrk02_v1, HLT_DoubleMu4_Jpsi_Displaced_v1, HLT_Mu17_Mu8_v1, HLT_Mu17_TkMu8_v1, HLT_Mu30_TkMu11_v1, HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_v1, HLT_Mu17_TrkIsoVVL_TkMu8_TrkIsoVVL_v1, HLT_DoubleMu4_3_Bs_v1, HLT_DoubleMu4_3_Jpsi_Displaced_v1, HLT_Dimuon20_Jpsi_v1, HLT_Dimuon13_PsiPrime_v1, HLT_Dimuon13_Upsilon_v1, HLT_Mu25_TkMu0_dEta18_Onia_v1, HLT_DoubleMu4_JpsiTrk_Displaced_v1, HLT_DoubleMu4_PsiPrimeTrk_Displaced_v1, HLT_DoubleMu4_LowMassNonResonantTrk_Displaced_v1, HLT_Ele27_WP80_Gsf_v1, HLT_Ele17_Ele8_Gsf_v1, HLT_DoubleEle33_CaloIdL_GsfTrkIdVL_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1, HLT_PFJet40_v1, HLT_PFJet260_v1, HLT_CaloJet260_v1, HLT_HT650_v1, HLT_PFHT650_v1, HLT_JetE50_NoBPTX3BX_NoHalo_v1, HLT_IsoMu17_eta2p1_LooseIsoPFTau20_v1, HLT_Ele22_eta2p1_WP90Rho_Gsf_LooseIsoPFTau20_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_v1, HLT_DoubleMediumIsoPFTau40_Trk1_eta2p1_Reg_v1, HLT_LooseIsoPFTau40_Trk25_Prong1_eta2p1_PFMET65_v1, HLT_PFMET180_NoiseCleaned_v1, HLT_PFchMET90_NoiseCleaned_v1, HLT_BTagCSV07_v1, HLT_IterativeTracking_v1, HLT_ReducedIterativeTracking_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet40_v1, HLT_Ele27_WP80_Gsf_TriCentralPFJet60_50_35_v1, HLT_IsoMu24_IterTrk02_CentralPFJet30_BTagCSV_v1, HLT_Ele27_WP80_Gsf_CentralPFJet30_BTagCSV_v1, HLT_Ele23_Ele12_CaloId_TrackId_Iso_v1, HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1, HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1, HLT_Photon135_PFMET40_v1, HLT_Photon150_PFMET40_v1, HLT_Photon160_PFMET40_v1, HLT_Photon250_NoHE_PFMET40_v1, HLT_Photon300_NoHE_PFMET40_v1, HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1, HLT_Photon135_VBF_v1, HLT_Photon150_VBF_v1, HLT_Photon160_VBF_v1, HLT_Photon250_NoHE_VBF_v1, HLT_Photon300_NoHE_VBF_v1, HLT_Physics_v1, HLTriggerFinalPath, HLTAnalyzerEndpath )) # CMSSW version specific customizations import os diff --git a/HLTrigger/Configuration/python/HLT_HIon_cff.py b/HLTrigger/Configuration/python/HLT_HIon_cff.py index 8d32c62598353..5a16e04787fe2 100644 --- a/HLTrigger/Configuration/python/HLT_HIon_cff.py +++ b/HLTrigger/Configuration/python/HLT_HIon_cff.py @@ -1,10 +1,10 @@ -# /dev/CMSSW_7_1_1/HIon/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/HIon/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/HIon/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/HIon/V87') ) HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -452,6 +452,10 @@ ) streams = cms.PSet( A = cms.vstring( 'InitialPD' ) ) datasets = cms.PSet( InitialPD = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', + 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', + 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ) hltESSHcalSeverityLevel = cms.ESSource( "EmptyESSource", @@ -1594,8 +1598,8 @@ setSigmaZ = cms.double( 0.0 ), maxRadius = cms.double( 2.0 ) ) -hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), +hltL1sMu16 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleMu16" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -1606,7 +1610,1550 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", +hltPreMu40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltL1fL1sMu16L1Filtered0 = cms.EDFilter( "HLTMuonL1Filter", + saveTags = cms.bool( False ), + CSCTFtag = cms.InputTag( "unused" ), + PreviousCandTag = cms.InputTag( "hltL1sMu16" ), + MinPt = cms.double( 0.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 2.5 ), + SelectQualities = cms.vint32( ), + CandTag = cms.InputTag( "hltL1extraParticles" ), + ExcludeSingleSegmentCSC = cms.bool( False ) +) +hltMuonDTDigis = cms.EDProducer( "DTUnpackingModule", + useStandardFEDid = cms.bool( True ), + inputLabel = cms.InputTag( "rawDataCollector" ), + dataType = cms.string( "DDU" ), + fedbyType = cms.bool( False ), + readOutParameters = cms.PSet( + debug = cms.untracked.bool( False ), + rosParameters = cms.PSet( + writeSC = cms.untracked.bool( True ), + readingDDU = cms.untracked.bool( True ), + performDataIntegrityMonitor = cms.untracked.bool( False ), + readDDUIDfromDDU = cms.untracked.bool( True ), + debug = cms.untracked.bool( False ), + localDAQ = cms.untracked.bool( False ) + ), + localDAQ = cms.untracked.bool( False ), + performDataIntegrityMonitor = cms.untracked.bool( False ) + ), + dqmOnly = cms.bool( False ) +) +hltDt1DRecHits = cms.EDProducer( "DTRecHitProducer", + debug = cms.untracked.bool( False ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + dtDigiLabel = cms.InputTag( "hltMuonDTDigis" ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ) +) +hltDt4DSegments = cms.EDProducer( "DTRecSegment4DProducer", + debug = cms.untracked.bool( False ), + Reco4DAlgoName = cms.string( "DTCombinatorialPatternReco4D" ), + recHits2DLabel = cms.InputTag( "dt2DSegments" ), + recHits1DLabel = cms.InputTag( "hltDt1DRecHits" ), + Reco4DAlgoConfig = cms.PSet( + segmCleanerMode = cms.int32( 2 ), + Reco2DAlgoName = cms.string( "DTCombinatorialPatternReco" ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + nSharedHitsMax = cms.int32( 2 ), + hit_afterT0_resolution = cms.double( 0.03 ), + Reco2DAlgoConfig = cms.PSet( + segmCleanerMode = cms.int32( 2 ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + nSharedHitsMax = cms.int32( 2 ), + AlphaMaxPhi = cms.double( 1.0 ), + hit_afterT0_resolution = cms.double( 0.03 ), + MaxAllowedHits = cms.uint32( 50 ), + performT0_vdriftSegCorrection = cms.bool( False ), + AlphaMaxTheta = cms.double( 0.9 ), + debug = cms.untracked.bool( False ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ), + nUnSharedHitsMin = cms.int32( 2 ), + performT0SegCorrection = cms.bool( False ), + perform_delta_rejecting = cms.bool( False ) + ), + performT0_vdriftSegCorrection = cms.bool( False ), + debug = cms.untracked.bool( False ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ), + nUnSharedHitsMin = cms.int32( 2 ), + AllDTRecHits = cms.bool( True ), + performT0SegCorrection = cms.bool( False ), + perform_delta_rejecting = cms.bool( False ) + ) +) +hltMuonCSCDigis = cms.EDProducer( "CSCDCCUnpacker", + PrintEventNumber = cms.untracked.bool( False ), + UseSelectiveUnpacking = cms.bool( True ), + UseExaminer = cms.bool( True ), + ErrorMask = cms.uint32( 0x0 ), + InputObjects = cms.InputTag( "rawDataCollector" ), + UseFormatStatus = cms.bool( True ), + ExaminerMask = cms.uint32( 0x1febf3f6 ), + UnpackStatusDigis = cms.bool( False ), + VisualFEDInspect = cms.untracked.bool( False ), + FormatedEventDump = cms.untracked.bool( False ), + Debug = cms.untracked.bool( False ), + VisualFEDShort = cms.untracked.bool( False ) +) +hltCsc2DRecHits = cms.EDProducer( "CSCRecHitDProducer", + XTasymmetry_ME1b = cms.double( 0.0 ), + XTasymmetry_ME1a = cms.double( 0.0 ), + ConstSyst_ME1a = cms.double( 0.022 ), + ConstSyst_ME1b = cms.double( 0.007 ), + XTasymmetry_ME41 = cms.double( 0.0 ), + CSCStripxtalksOffset = cms.double( 0.03 ), + CSCUseCalibrations = cms.bool( True ), + CSCUseTimingCorrections = cms.bool( True ), + CSCNoOfTimeBinsForDynamicPedestal = cms.int32( 2 ), + XTasymmetry_ME22 = cms.double( 0.0 ), + UseFivePoleFit = cms.bool( True ), + XTasymmetry_ME21 = cms.double( 0.0 ), + ConstSyst_ME21 = cms.double( 0.0 ), + CSCDebug = cms.untracked.bool( False ), + ConstSyst_ME22 = cms.double( 0.0 ), + CSCUseGasGainCorrections = cms.bool( False ), + XTasymmetry_ME31 = cms.double( 0.0 ), + readBadChambers = cms.bool( True ), + NoiseLevel_ME13 = cms.double( 8.0 ), + NoiseLevel_ME12 = cms.double( 9.0 ), + NoiseLevel_ME32 = cms.double( 9.0 ), + NoiseLevel_ME31 = cms.double( 9.0 ), + XTasymmetry_ME32 = cms.double( 0.0 ), + ConstSyst_ME41 = cms.double( 0.0 ), + CSCStripClusterSize = cms.untracked.int32( 3 ), + CSCStripClusterChargeCut = cms.double( 25.0 ), + CSCStripPeakThreshold = cms.double( 10.0 ), + readBadChannels = cms.bool( True ), + UseParabolaFit = cms.bool( False ), + XTasymmetry_ME13 = cms.double( 0.0 ), + XTasymmetry_ME12 = cms.double( 0.0 ), + wireDigiTag = cms.InputTag( 'hltMuonCSCDigis','MuonCSCWireDigi' ), + ConstSyst_ME12 = cms.double( 0.0 ), + ConstSyst_ME13 = cms.double( 0.0 ), + ConstSyst_ME32 = cms.double( 0.0 ), + ConstSyst_ME31 = cms.double( 0.0 ), + UseAverageTime = cms.bool( False ), + NoiseLevel_ME1a = cms.double( 7.0 ), + NoiseLevel_ME1b = cms.double( 8.0 ), + CSCWireClusterDeltaT = cms.int32( 1 ), + CSCUseStaticPedestals = cms.bool( False ), + stripDigiTag = cms.InputTag( 'hltMuonCSCDigis','MuonCSCStripDigi' ), + CSCstripWireDeltaTime = cms.int32( 8 ), + NoiseLevel_ME21 = cms.double( 9.0 ), + NoiseLevel_ME22 = cms.double( 9.0 ), + NoiseLevel_ME41 = cms.double( 9.0 ) +) +hltCscSegments = cms.EDProducer( "CSCSegmentProducer", + inputObjects = cms.InputTag( "hltCsc2DRecHits" ), + algo_psets = cms.VPSet( + cms.PSet( chamber_types = cms.vstring( 'ME1/a', + 'ME1/b', + 'ME1/2', + 'ME1/3', + 'ME2/1', + 'ME2/2', + 'ME3/1', + 'ME3/2', + 'ME4/1', + 'ME4/2' ), + algo_name = cms.string( "CSCSegAlgoST" ), + parameters_per_chamber_type = cms.vint32( 2, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), + algo_psets = cms.VPSet( + cms.PSet( maxRatioResidualPrune = cms.double( 3.0 ), + yweightPenalty = cms.double( 1.5 ), + maxRecHitsInCluster = cms.int32( 20 ), + dPhiFineMax = cms.double( 0.025 ), + preClusteringUseChaining = cms.bool( True ), + ForceCovariance = cms.bool( False ), + hitDropLimit6Hits = cms.double( 0.3333 ), + NormChi2Cut2D = cms.double( 20.0 ), + BPMinImprovement = cms.double( 10000.0 ), + Covariance = cms.double( 0.0 ), + tanPhiMax = cms.double( 0.5 ), + SeedBig = cms.double( 0.0015 ), + onlyBestSegment = cms.bool( False ), + dRPhiFineMax = cms.double( 8.0 ), + SeedSmall = cms.double( 2.0E-4 ), + curvePenalty = cms.double( 2.0 ), + dXclusBoxMax = cms.double( 4.0 ), + BrutePruning = cms.bool( True ), + curvePenaltyThreshold = cms.double( 0.85 ), + CorrectTheErrors = cms.bool( True ), + hitDropLimit4Hits = cms.double( 0.6 ), + useShowering = cms.bool( False ), + CSCDebug = cms.untracked.bool( False ), + tanThetaMax = cms.double( 1.2 ), + NormChi2Cut3D = cms.double( 10.0 ), + minHitsPerSegment = cms.int32( 3 ), + ForceCovarianceAll = cms.bool( False ), + yweightPenaltyThreshold = cms.double( 1.0 ), + prePrunLimit = cms.double( 3.17 ), + hitDropLimit5Hits = cms.double( 0.8 ), + preClustering = cms.bool( True ), + prePrun = cms.bool( True ), + maxDPhi = cms.double( 999.0 ), + maxDTheta = cms.double( 999.0 ), + Pruning = cms.bool( True ), + dYclusBoxMax = cms.double( 8.0 ) + ), + cms.PSet( maxRatioResidualPrune = cms.double( 3.0 ), + yweightPenalty = cms.double( 1.5 ), + maxRecHitsInCluster = cms.int32( 24 ), + dPhiFineMax = cms.double( 0.025 ), + preClusteringUseChaining = cms.bool( True ), + ForceCovariance = cms.bool( False ), + hitDropLimit6Hits = cms.double( 0.3333 ), + NormChi2Cut2D = cms.double( 20.0 ), + BPMinImprovement = cms.double( 10000.0 ), + Covariance = cms.double( 0.0 ), + tanPhiMax = cms.double( 0.5 ), + SeedBig = cms.double( 0.0015 ), + onlyBestSegment = cms.bool( False ), + dRPhiFineMax = cms.double( 8.0 ), + SeedSmall = cms.double( 2.0E-4 ), + curvePenalty = cms.double( 2.0 ), + dXclusBoxMax = cms.double( 4.0 ), + BrutePruning = cms.bool( True ), + curvePenaltyThreshold = cms.double( 0.85 ), + CorrectTheErrors = cms.bool( True ), + hitDropLimit4Hits = cms.double( 0.6 ), + useShowering = cms.bool( False ), + CSCDebug = cms.untracked.bool( False ), + tanThetaMax = cms.double( 1.2 ), + NormChi2Cut3D = cms.double( 10.0 ), + minHitsPerSegment = cms.int32( 3 ), + ForceCovarianceAll = cms.bool( False ), + yweightPenaltyThreshold = cms.double( 1.0 ), + prePrunLimit = cms.double( 3.17 ), + hitDropLimit5Hits = cms.double( 0.8 ), + preClustering = cms.bool( True ), + prePrun = cms.bool( True ), + maxDPhi = cms.double( 999.0 ), + maxDTheta = cms.double( 999.0 ), + Pruning = cms.bool( True ), + dYclusBoxMax = cms.double( 8.0 ) + ) + ) + ) + ), + algo_type = cms.int32( 1 ) +) +hltMuonRPCDigis = cms.EDProducer( "RPCUnpackingModule", + InputLabel = cms.InputTag( "rawDataCollector" ), + doSynchro = cms.bool( False ) +) +hltRpcRecHits = cms.EDProducer( "RPCRecHitProducer", + recAlgoConfig = cms.PSet( ), + deadvecfile = cms.FileInPath( "RecoLocalMuon/RPCRecHit/data/RPCDeadVec.dat" ), + rpcDigiLabel = cms.InputTag( "hltMuonRPCDigis" ), + maskvecfile = cms.FileInPath( "RecoLocalMuon/RPCRecHit/data/RPCMaskVec.dat" ), + recAlgo = cms.string( "RPCRecHitStandardAlgo" ), + deadSource = cms.string( "File" ), + maskSource = cms.string( "File" ) +) +hltL2OfflineMuonSeeds = cms.EDProducer( "MuonSeedGenerator", + SMB_21 = cms.vdouble( 1.043, -0.124, 0.0, 0.183, 0.0, 0.0 ), + SMB_20 = cms.vdouble( 1.011, -0.052, 0.0, 0.188, 0.0, 0.0 ), + SMB_22 = cms.vdouble( 1.474, -0.758, 0.0, 0.185, 0.0, 0.0 ), + OL_2213 = cms.vdouble( 0.117, 0.0, 0.0, 0.044, 0.0, 0.0 ), + SME_11 = cms.vdouble( 3.295, -1.527, 0.112, 0.378, 0.02, 0.0 ), + SME_13 = cms.vdouble( -1.286, 1.711, 0.0, 0.356, 0.0, 0.0 ), + SME_12 = cms.vdouble( 0.102, 0.599, 0.0, 0.38, 0.0, 0.0 ), + DT_34_2_scale = cms.vdouble( -11.901897, 0.0 ), + OL_1213_0_scale = cms.vdouble( -4.488158, 0.0 ), + OL_1222_0_scale = cms.vdouble( -5.810449, 0.0 ), + DT_13 = cms.vdouble( 0.315, 0.068, -0.127, 0.051, -0.002, 0.0 ), + DT_12 = cms.vdouble( 0.183, 0.054, -0.087, 0.028, 0.002, 0.0 ), + DT_14 = cms.vdouble( 0.359, 0.052, -0.107, 0.072, -0.004, 0.0 ), + CSC_13_3_scale = cms.vdouble( -1.701268, 0.0 ), + DT_24_2_scale = cms.vdouble( -6.63094, 0.0 ), + CSC_23 = cms.vdouble( -0.081, 0.113, -0.029, 0.015, 0.008, 0.0 ), + CSC_24 = cms.vdouble( 0.004, 0.021, -0.002, 0.053, 0.0, 0.0 ), + OL_2222 = cms.vdouble( 0.107, 0.0, 0.0, 0.04, 0.0, 0.0 ), + DT_14_2_scale = cms.vdouble( -4.808546, 0.0 ), + SMB_10 = cms.vdouble( 1.387, -0.038, 0.0, 0.19, 0.0, 0.0 ), + SMB_11 = cms.vdouble( 1.247, 0.72, -0.802, 0.229, -0.075, 0.0 ), + SMB_12 = cms.vdouble( 2.128, -0.956, 0.0, 0.199, 0.0, 0.0 ), + SME_21 = cms.vdouble( -0.529, 1.194, -0.358, 0.472, 0.086, 0.0 ), + SME_22 = cms.vdouble( -1.207, 1.491, -0.251, 0.189, 0.243, 0.0 ), + DT_13_2_scale = cms.vdouble( -4.257687, 0.0 ), + CSC_34 = cms.vdouble( 0.062, -0.067, 0.019, 0.021, 0.003, 0.0 ), + SME_22_0_scale = cms.vdouble( -3.457901, 0.0 ), + DT_24_1_scale = cms.vdouble( -7.490909, 0.0 ), + OL_1232_0_scale = cms.vdouble( -5.964634, 0.0 ), + DT_23_1_scale = cms.vdouble( -5.320346, 0.0 ), + SME_13_0_scale = cms.vdouble( 0.104905, 0.0 ), + SMB_22_0_scale = cms.vdouble( 1.346681, 0.0 ), + CSC_12_1_scale = cms.vdouble( -6.434242, 0.0 ), + DT_34 = cms.vdouble( 0.044, 0.004, -0.013, 0.029, 0.003, 0.0 ), + SME_32 = cms.vdouble( -0.901, 1.333, -0.47, 0.41, 0.073, 0.0 ), + SME_31 = cms.vdouble( -1.594, 1.482, -0.317, 0.487, 0.097, 0.0 ), + CSC_13_2_scale = cms.vdouble( -6.077936, 0.0 ), + crackEtas = cms.vdouble( 0.2, 1.6, 1.7 ), + SME_11_0_scale = cms.vdouble( 1.325085, 0.0 ), + SMB_20_0_scale = cms.vdouble( 1.486168, 0.0 ), + DT_13_1_scale = cms.vdouble( -4.520923, 0.0 ), + CSC_24_1_scale = cms.vdouble( -6.055701, 0.0 ), + CSC_01_1_scale = cms.vdouble( -1.915329, 0.0 ), + DT_23 = cms.vdouble( 0.13, 0.023, -0.057, 0.028, 0.004, 0.0 ), + DT_24 = cms.vdouble( 0.176, 0.014, -0.051, 0.051, 0.003, 0.0 ), + SMB_12_0_scale = cms.vdouble( 2.283221, 0.0 ), + SMB_30_0_scale = cms.vdouble( -3.629838, 0.0 ), + SME_42 = cms.vdouble( -0.003, 0.005, 0.005, 0.608, 0.076, 0.0 ), + SME_41 = cms.vdouble( -0.003, 0.005, 0.005, 0.608, 0.076, 0.0 ), + CSC_12_2_scale = cms.vdouble( -1.63622, 0.0 ), + DT_34_1_scale = cms.vdouble( -13.783765, 0.0 ), + CSC_34_1_scale = cms.vdouble( -11.520507, 0.0 ), + OL_2213_0_scale = cms.vdouble( -7.239789, 0.0 ), + SMB_32_0_scale = cms.vdouble( -3.054156, 0.0 ), + CSC_12_3_scale = cms.vdouble( -1.63622, 0.0 ), + SME_21_0_scale = cms.vdouble( -0.040862, 0.0 ), + OL_1232 = cms.vdouble( 0.184, 0.0, 0.0, 0.066, 0.0, 0.0 ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + SMB_10_0_scale = cms.vdouble( 2.448566, 0.0 ), + EnableDTMeasurement = cms.bool( True ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + CSC_23_2_scale = cms.vdouble( -6.079917, 0.0 ), + scaleDT = cms.bool( True ), + DT_12_2_scale = cms.vdouble( -3.518165, 0.0 ), + OL_1222 = cms.vdouble( 0.848, -0.591, 0.0, 0.062, 0.0, 0.0 ), + CSC_23_1_scale = cms.vdouble( -19.084285, 0.0 ), + OL_1213 = cms.vdouble( 0.96, -0.737, 0.0, 0.052, 0.0, 0.0 ), + CSC_02 = cms.vdouble( 0.612, -0.207, 0.0, 0.067, -0.001, 0.0 ), + CSC_03 = cms.vdouble( 0.787, -0.338, 0.029, 0.101, -0.008, 0.0 ), + CSC_01 = cms.vdouble( 0.166, 0.0, 0.0, 0.031, 0.0, 0.0 ), + SMB_32 = cms.vdouble( 0.67, -0.327, 0.0, 0.22, 0.0, 0.0 ), + SMB_30 = cms.vdouble( 0.505, -0.022, 0.0, 0.215, 0.0, 0.0 ), + SMB_31 = cms.vdouble( 0.549, -0.145, 0.0, 0.207, 0.0, 0.0 ), + crackWindow = cms.double( 0.04 ), + CSC_14_3_scale = cms.vdouble( -1.969563, 0.0 ), + SMB_31_0_scale = cms.vdouble( -3.323768, 0.0 ), + DT_12_1_scale = cms.vdouble( -3.692398, 0.0 ), + SMB_21_0_scale = cms.vdouble( 1.58384, 0.0 ), + DT_23_2_scale = cms.vdouble( -5.117625, 0.0 ), + SME_12_0_scale = cms.vdouble( 2.279181, 0.0 ), + DT_14_1_scale = cms.vdouble( -5.644816, 0.0 ), + beamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + SMB_11_0_scale = cms.vdouble( 2.56363, 0.0 ), + EnableCSCMeasurement = cms.bool( True ), + CSC_14 = cms.vdouble( 0.606, -0.181, -0.002, 0.111, -0.003, 0.0 ), + OL_2222_0_scale = cms.vdouble( -7.667231, 0.0 ), + CSC_13 = cms.vdouble( 0.901, -1.302, 0.533, 0.045, 0.005, 0.0 ), + CSC_12 = cms.vdouble( -0.161, 0.254, -0.047, 0.042, -0.007, 0.0 ) +) +hltL2MuonSeeds = cms.EDProducer( "L2MuonSeedGenerator", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'SteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + InputObjects = cms.InputTag( "hltL1extraParticles" ), + L1MaxEta = cms.double( 2.5 ), + OfflineSeedLabel = cms.untracked.InputTag( "hltL2OfflineMuonSeeds" ), + L1MinPt = cms.double( 0.0 ), + L1MinQuality = cms.uint32( 1 ), + GMTReadoutCollection = cms.InputTag( "hltGtDigis" ), + UseUnassociatedL1 = cms.bool( False ), + UseOfflineSeed = cms.untracked.bool( True ), + Propagator = cms.string( "SteppingHelixPropagatorAny" ) +) +hltL2Muons = cms.EDProducer( "L2MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny', + 'hltESPFastSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + InputObjects = cms.InputTag( "hltL2MuonSeeds" ), + SeedTransformerParameters = cms.PSet( + Fitter = cms.string( "hltESPKFFittingSmootherForL2Muon" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + NMinRecHits = cms.uint32( 2 ), + UseSubRecHits = cms.bool( False ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + RescaleError = cms.double( 100.0 ) + ), + L2TrajBuilderParameters = cms.PSet( + DoRefit = cms.bool( False ), + SeedPropagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + FilterParameters = cms.PSet( + NumberOfSigma = cms.double( 3.0 ), + FitDirection = cms.string( "insideOut" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + MaxChi2 = cms.double( 1000.0 ), + MuonTrajectoryUpdatorParameters = cms.PSet( + MaxChi2 = cms.double( 25.0 ), + RescaleErrorFactor = cms.double( 100.0 ), + Granularity = cms.int32( 0 ), + ExcludeRPCFromFit = cms.bool( False ), + UseInvalidHits = cms.bool( True ), + RescaleError = cms.bool( False ) + ), + EnableRPCMeasurement = cms.bool( True ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + EnableDTMeasurement = cms.bool( True ), + RPCRecSegmentLabel = cms.InputTag( "hltRpcRecHits" ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + EnableCSCMeasurement = cms.bool( True ) + ), + NavigationType = cms.string( "Standard" ), + SeedTransformerParameters = cms.PSet( + Fitter = cms.string( "hltESPKFFittingSmootherForL2Muon" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + NMinRecHits = cms.uint32( 2 ), + UseSubRecHits = cms.bool( False ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + RescaleError = cms.double( 100.0 ) + ), + DoBackwardFilter = cms.bool( True ), + SeedPosition = cms.string( "in" ), + BWFilterParameters = cms.PSet( + NumberOfSigma = cms.double( 3.0 ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + FitDirection = cms.string( "outsideIn" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + MaxChi2 = cms.double( 100.0 ), + MuonTrajectoryUpdatorParameters = cms.PSet( + MaxChi2 = cms.double( 25.0 ), + RescaleErrorFactor = cms.double( 100.0 ), + Granularity = cms.int32( 0 ), + ExcludeRPCFromFit = cms.bool( False ), + UseInvalidHits = cms.bool( True ), + RescaleError = cms.bool( False ) + ), + EnableRPCMeasurement = cms.bool( True ), + BWSeedType = cms.string( "fromGenerator" ), + EnableDTMeasurement = cms.bool( True ), + RPCRecSegmentLabel = cms.InputTag( "hltRpcRecHits" ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + EnableCSCMeasurement = cms.bool( True ) + ), + DoSeedRefit = cms.bool( False ) + ), + DoSeedRefit = cms.bool( False ), + TrackLoaderParameters = cms.PSet( + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + DoSmoothing = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + BeamSpotPosition = cms.vdouble( 0.0, 0.0, 0.0 ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( True ) + ), + MuonTrajectoryBuilder = cms.string( "Exhaustive" ) +) +hltL2MuonCandidates = cms.EDProducer( "L2MuonCandidateProducer", + InputObjects = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +hltL2fL1sMu16L1f0L2Filtered16Q = cms.EDFilter( "HLTMuonL2PreFilter", + saveTags = cms.bool( True ), + MaxDr = cms.double( 9999.0 ), + CutOnChambers = cms.bool( False ), + PreviousCandTag = cms.InputTag( "hltL1fL1sMu16L1Filtered0" ), + MinPt = cms.double( 16.0 ), + MinN = cms.int32( 1 ), + SeedMapTag = cms.InputTag( "hltL2Muons" ), + MaxEta = cms.double( 2.5 ), + MinNhits = cms.vint32( 0, 1, 0, 1 ), + MinDxySig = cms.double( -1.0 ), + MinNchambers = cms.vint32( 0 ), + AbsEtaBins = cms.vdouble( 0.9, 1.5, 2.1, 5.0 ), + MaxDz = cms.double( 9999.0 ), + CandTag = cms.InputTag( "hltL2MuonCandidates" ), + BeamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + MinDr = cms.double( -1.0 ), + NSigmaPt = cms.double( 0.0 ), + MinNstations = cms.vint32( 0, 2, 0, 2 ) +) +hltSiPixelDigis = cms.EDProducer( "SiPixelRawToDigi", + UseQualityInfo = cms.bool( False ), + CheckPixelOrder = cms.bool( False ), + IncludeErrors = cms.bool( False ), + InputLabel = cms.InputTag( "rawDataCollector" ), + ErrorList = cms.vint32( ), + Regions = cms.PSet( ), + Timing = cms.untracked.bool( False ), + UserErrorList = cms.vint32( ) +) +hltSiPixelClusters = cms.EDProducer( "SiPixelClusterProducer", + src = cms.InputTag( "hltSiPixelDigis" ), + ChannelThreshold = cms.int32( 1000 ), + maxNumberOfClusters = cms.int32( 20000 ), + VCaltoElectronGain = cms.int32( 65 ), + MissCalibrate = cms.untracked.bool( True ), + SplitClusters = cms.bool( False ), + VCaltoElectronOffset = cms.int32( -414 ), + payloadType = cms.string( "HLT" ), + SeedThreshold = cms.int32( 1000 ), + ClusterThreshold = cms.double( 4000.0 ) +) +hltSiPixelClustersCache = cms.EDProducer( "SiPixelClusterShapeCacheProducer", + src = cms.InputTag( "hltSiPixelClusters" ), + onDemand = cms.bool( False ) +) +hltSiPixelRecHits = cms.EDProducer( "SiPixelRecHitConverter", + VerboseLevel = cms.untracked.int32( 0 ), + src = cms.InputTag( "hltSiPixelClusters" ), + CPE = cms.string( "hltESPPixelCPEGeneric" ) +) +hltSiStripExcludedFEDListProducer = cms.EDProducer( "SiStripExcludedFEDListProducer", + ProductLabel = cms.InputTag( "rawDataCollector" ) +) +hltSiStripRawToClustersFacility = cms.EDProducer( "SiStripClusterizerFromRaw", + ProductLabel = cms.InputTag( "rawDataCollector" ), + DoAPVEmulatorCheck = cms.bool( False ), + Algorithms = cms.PSet( + SiStripFedZeroSuppressionMode = cms.uint32( 4 ), + CommonModeNoiseSubtractionMode = cms.string( "Median" ), + PedestalSubtractionFedMode = cms.bool( True ), + TruncateInSuppressor = cms.bool( True ), + doAPVRestore = cms.bool( False ), + useCMMeanMap = cms.bool( False ) + ), + Clusterizer = cms.PSet( + ChannelThreshold = cms.double( 2.0 ), + MaxSequentialBad = cms.uint32( 1 ), + MaxSequentialHoles = cms.uint32( 0 ), + Algorithm = cms.string( "ThreeThresholdAlgorithm" ), + MaxAdjacentBad = cms.uint32( 0 ), + QualityLabel = cms.string( "" ), + SeedThreshold = cms.double( 3.0 ), + ClusterThreshold = cms.double( 5.0 ), + setDetId = cms.bool( True ), + RemoveApvShots = cms.bool( True ) + ), + onDemand = cms.bool( True ) +) +hltSiStripClusters = cms.EDProducer( "MeasurementTrackerEventProducer", + inactivePixelDetectorLabels = cms.VInputTag( ), + stripClusterProducer = cms.string( "hltSiStripRawToClustersFacility" ), + pixelClusterProducer = cms.string( "hltSiPixelClusters" ), + switchOffPixelsIfEmpty = cms.bool( True ), + inactiveStripDetectorLabels = cms.VInputTag( 'hltSiStripExcludedFEDListProducer' ), + skipClusters = cms.InputTag( "" ), + measurementTracker = cms.string( "hltESPMeasurementTracker" ) +) +hltL3TrajSeedOIState = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + propagatorCompatibleName = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + option = cms.uint32( 3 ), + maxChi2 = cms.double( 40.0 ), + errorMatrixPset = cms.PSet( + atIP = cms.bool( True ), + action = cms.string( "use" ), + errorMatrixValuesPSet = cms.PSet( + pf3_V12 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V13 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V11 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V14 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V15 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + yAxis = cms.vdouble( 0.0, 1.0, 1.4, 10.0 ), + pf3_V33 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + zAxis = cms.vdouble( -3.14159, 3.14159 ), + pf3_V44 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + xAxis = cms.vdouble( 0.0, 13.0, 30.0, 70.0, 1000.0 ), + pf3_V22 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V23 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V45 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V55 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V34 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V35 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V25 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V24 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ) + ) + ), + propagatorName = cms.string( "hltESPSteppingHelixPropagatorAlong" ), + manySeeds = cms.bool( False ), + copyMuonRecHit = cms.bool( False ), + ComponentName = cms.string( "TSGForRoadSearch" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSteppingHelixPropagatorOpposite', + 'hltESPSteppingHelixPropagatorAlong' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( ), + PtCut = cms.double( 1.0 ) +) +hltL3TrackCandidateFromL2OIState = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedOIState" ), + reverseTrajectories = cms.bool( True ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilderSeedHit" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilderSeedHit" ), + maxNSeeds = cms.uint32( 100000 ) +) +hltL3TkTracksFromL2OIState = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2OIState" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +hltL3MuonsOIState = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2OIState" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +hltL3TrajSeedOIHit = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + PSetNames = cms.vstring( 'skipTSG', + 'iterativeTSG' ), + L3TkCollectionA = cms.InputTag( "hltL3MuonsOIState" ), + iterativeTSG = cms.PSet( + ErrorRescaling = cms.double( 3.0 ), + beamSpot = cms.InputTag( "unused" ), + MaxChi2 = cms.double( 40.0 ), + errorMatrixPset = cms.PSet( + atIP = cms.bool( True ), + action = cms.string( "use" ), + errorMatrixValuesPSet = cms.PSet( + pf3_V12 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V13 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V11 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V14 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V15 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + yAxis = cms.vdouble( 0.0, 1.0, 1.4, 10.0 ), + pf3_V33 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + zAxis = cms.vdouble( -3.14159, 3.14159 ), + pf3_V44 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + xAxis = cms.vdouble( 0.0, 13.0, 30.0, 70.0, 1000.0 ), + pf3_V22 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V23 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V45 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V55 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V34 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V35 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V25 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V24 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ) + ) + ), + UpdateState = cms.bool( True ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SelectState = cms.bool( False ), + SigmaZ = cms.double( 25.0 ), + ResetMethod = cms.string( "matrix" ), + ComponentName = cms.string( "TSGFromPropagation" ), + UseVertexState = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAnyOpposite" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + skipTSG = cms.PSet( ), + ComponentName = cms.string( "DualByL2TSG" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'PropagatorWithMaterial', + 'hltESPSmartPropagatorAnyOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( + cleanerFromSharedHits = cms.bool( True ), + ptCleaner = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + directionCleaner = cms.bool( True ) + ), + PtCut = cms.double( 1.0 ) +) +hltL3TrackCandidateFromL2OIHit = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedOIHit" ), + reverseTrajectories = cms.bool( True ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilder" ), + maxNSeeds = cms.uint32( 100000 ) +) +hltL3TkTracksFromL2OIHit = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2OIHit" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +hltL3MuonsOIHit = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2OIHit" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +hltL3TkFromL2OICombination = cms.EDProducer( "L3TrackCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit' ) +) +hltPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +hltPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +hltMixedLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg', + 'FPix2_pos+TEC1_pos', + 'FPix2_pos+TEC2_pos', + 'TEC1_pos+TEC2_pos', + 'TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC1_neg', + 'FPix2_neg+TEC2_neg', + 'TEC1_neg+TEC2_neg', + 'TEC2_neg+TEC3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +hltL3TrajSeedIOHit = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + PSetNames = cms.vstring( 'skipTSG', + 'iterativeTSG' ), + L3TkCollectionA = cms.InputTag( "hltL3TkFromL2OICombination" ), + iterativeTSG = cms.PSet( + firstTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 0 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.06 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + PSetNames = cms.vstring( 'firstTSG', + 'secondTSG' ), + ComponentName = cms.string( "CombinedTSG" ), + thirdTSG = cms.PSet( + PSetNames = cms.vstring( 'endcapTSG', + 'barrelTSG' ), + barrelTSG = cms.PSet( ), + endcapTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + etaSeparation = cms.double( 2.0 ), + ComponentName = cms.string( "DualByEtaTSG" ) + ), + secondTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltPixelLayerPairs" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ) + ), + skipTSG = cms.PSet( ), + ComponentName = cms.string( "DualByL2TSG" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'PropagatorWithMaterial' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.1 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.1 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( + cleanerFromSharedHits = cms.bool( True ), + ptCleaner = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + directionCleaner = cms.bool( True ) + ), + PtCut = cms.double( 1.0 ) +) +hltL3TrackCandidateFromL2IOHit = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedIOHit" ), + reverseTrajectories = cms.bool( False ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilder" ), + maxNSeeds = cms.uint32( 100000 ) +) +hltL3TkTracksFromL2IOHit = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2IOHit" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +hltL3MuonsIOHit = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2IOHit" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +hltL3TrajectorySeed = cms.EDProducer( "L3MuonTrajectorySeedCombiner", + labels = cms.VInputTag( 'hltL3TrajSeedIOHit','hltL3TrajSeedOIState','hltL3TrajSeedOIHit' ) +) +hltL3TrackCandidateFromL2 = cms.EDProducer( "L3TrackCandCombiner", + labels = cms.VInputTag( 'hltL3TrackCandidateFromL2IOHit','hltL3TrackCandidateFromL2OIHit','hltL3TrackCandidateFromL2OIState' ) +) +hltL3TkTracksMergeStep1 = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2OIState" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltL3TkTracksFromL2OIHit" ), + LostHitPenalty = cms.double( 0.0 ), + FoundHitBonus = cms.double( 100.0 ) +) +hltL3TkTracksFromL2 = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksMergeStep1" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltL3TkTracksFromL2IOHit" ), + LostHitPenalty = cms.double( 0.0 ), + FoundHitBonus = cms.double( 100.0 ) +) +hltL3MuonsLinksCombination = cms.EDProducer( "L3TrackLinksCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit','hltL3MuonsIOHit' ) +) +hltL3Muons = cms.EDProducer( "L3TrackCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit','hltL3MuonsIOHit' ) +) +hltL3MuonCandidates = cms.EDProducer( "L3MuonCandidateProducer", + InputLinksObjects = cms.InputTag( "hltL3MuonsLinksCombination" ), + InputObjects = cms.InputTag( "hltL3Muons" ), + MuonPtOption = cms.string( "Tracker" ) +) +hltL3fL1sMu16L1f0L2f16QL3Filtered40Q = cms.EDFilter( "HLTMuonL3PreFilter", + MaxNormalizedChi2 = cms.double( 20.0 ), + saveTags = cms.bool( True ), + PreviousCandTag = cms.InputTag( "hltL2fL1sMu16L1f0L2Filtered16Q" ), + MinNmuonHits = cms.int32( 0 ), + MinN = cms.int32( 1 ), + MinTrackPt = cms.double( 0.0 ), + MaxEta = cms.double( 2.5 ), + MaxDXYBeamSpot = cms.double( 0.1 ), + MinNhits = cms.int32( 0 ), + MinDxySig = cms.double( -1.0 ), + NSigmaPt = cms.double( 0.0 ), + MaxDz = cms.double( 9999.0 ), + MaxPtDifference = cms.double( 9999.0 ), + MaxDr = cms.double( 2.0 ), + CandTag = cms.InputTag( "hltL3MuonCandidates" ), + MinDr = cms.double( -1.0 ), + BeamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + MinPt = cms.double( 40.0 ) +) +hltBoolEnd = cms.EDFilter( "HLTBool", + result = cms.bool( True ) +) +hltL1sL1SingleEG20ORL1SingleEG22 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG20 OR L1_SingleEG22" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +hltPreEle27WP80Gsf = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) @@ -1630,6 +3177,13 @@ headerUnpacking = cms.bool( True ), memUnpacking = cms.bool( True ) ) +hltEcalPreshowerDigis = cms.EDProducer( "ESRawToDigi", + sourceTag = cms.InputTag( "rawDataCollector" ), + debugMode = cms.untracked.bool( False ), + InstanceES = cms.string( "" ), + LookupTable = cms.FileInPath( "EventFilter/ESDigiToRaw/data/ES_lookup_table.dat" ), + ESdigiCollection = cms.string( "" ) +) hltEcalUncalibRecHit = cms.EDProducer( "EcalUncalibRecHitProducer", EEdigiCollection = cms.InputTag( 'hltEcalDigis','eeDigis' ), alphaEB = cms.double( 1.138 ), @@ -1724,6 +3278,357 @@ logWarningEtThreshold_EB_FE = cms.double( 50.0 ), recoverEEIsolatedChannels = cms.bool( False ) ) +hltEcalPreshowerRecHit = cms.EDProducer( "ESRecHitProducer", + ESRecoAlgo = cms.int32( 0 ), + ESrechitCollection = cms.string( "EcalRecHitsES" ), + algo = cms.string( "ESRecHitWorker" ), + ESdigiCollection = cms.InputTag( "hltEcalPreshowerDigis" ) +) +hltRechitInRegionsECAL = cms.EDProducer( "EgammaHLTRechitInRegionsProducer", + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + useUncalib = cms.bool( False ), + regionEtaMargin = cms.double( 0.14 ), + ecalhitLabels = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + regionPhiMargin = cms.double( 0.4 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1UpperThr = cms.double( 999.0 ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + productLabels = cms.vstring( 'EcalRecHitsEB', + 'EcalRecHitsEE' ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ) +) +hltRechitInRegionsES = cms.EDProducer( "EgammaHLTRechitInRegionsProducer", + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + useUncalib = cms.bool( False ), + regionEtaMargin = cms.double( 0.14 ), + ecalhitLabels = cms.VInputTag( 'hltEcalPreshowerRecHit:EcalRecHitsES' ), + regionPhiMargin = cms.double( 0.4 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1UpperThr = cms.double( 999.0 ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + productLabels = cms.vstring( 'EcalRecHitsES' ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ) +) +hltParticleFlowRecHitECALL1Seeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +hltParticleFlowRecHitPSL1Seeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsES','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +hltParticleFlowClusterPSL1Seeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSL1Seeded" ) +) +hltParticleFlowClusterECALUncorrectedL1Seeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALL1Seeded" ) +) +hltParticleFlowClusterECALL1Seeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSL1Seeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedL1Seeded" ) +) +hltParticleFlowSuperClusterECALL1Seeded = cms.EDProducer( "PFECALSuperClusterProducer", + PFSuperClusterCollectionEndcap = cms.string( "hltParticleFlowSuperClusterECALEndcap" ), + doSatelliteClusterMerge = cms.bool( False ), + thresh_PFClusterBarrel = cms.double( 4.0 ), + PFBasicClusterCollectionBarrel = cms.string( "hltParticleFlowBasicClusterECALBarrel" ), + useRegression = cms.bool( False ), + satelliteMajorityFraction = cms.double( 0.5 ), + thresh_PFClusterEndcap = cms.double( 4.0 ), + ESAssociation = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + PFBasicClusterCollectionPreshower = cms.string( "hltParticleFlowBasicClusterECALPreshower" ), + use_preshower = cms.bool( True ), + verbose = cms.untracked.bool( False ), + thresh_SCEt = cms.double( 4.0 ), + etawidth_SuperClusterEndcap = cms.double( 0.04 ), + phiwidth_SuperClusterEndcap = cms.double( 0.6 ), + useDynamicDPhiWindow = cms.bool( True ), + PFSuperClusterCollectionBarrel = cms.string( "hltParticleFlowSuperClusterECALBarrel" ), + regressionConfig = cms.PSet( + regressionKeyEE = cms.string( "pfscecal_EECorrection_offline" ), + ecalRecHitsEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + ecalRecHitsEB = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + regressionKeyEB = cms.string( "pfscecal_EBCorrection_offline" ), + vertexCollection = cms.InputTag( "offlinePrimaryVertices" ) + ), + applyCrackCorrections = cms.bool( False ), + satelliteClusterSeedThreshold = cms.double( 50.0 ), + etawidth_SuperClusterBarrel = cms.double( 0.04 ), + PFBasicClusterCollectionEndcap = cms.string( "hltParticleFlowBasicClusterECALEndcap" ), + PFClusters = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + thresh_PFClusterSeedBarrel = cms.double( 4.0 ), + ClusteringType = cms.string( "Mustache" ), + EnergyWeight = cms.string( "Raw" ), + BeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + thresh_PFClusterSeedEndcap = cms.double( 4.0 ), + phiwidth_SuperClusterBarrel = cms.double( 0.6 ), + thresh_PFClusterES = cms.double( 5.0 ), + seedThresholdIsET = cms.bool( True ), + PFSuperClusterCollectionEndcapWithPreshower = cms.string( "hltParticleFlowSuperClusterECALEndcapWithPreshower" ) +) +hltEgammaCandidates = cms.EDProducer( "EgammaHLTRecoEcalCandidateProducers", + scIslandEndcapProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + scHybridBarrelProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ), + recoEcalCandidateCollection = cms.string( "" ) +) +hltEGL1SingleEG20ORL1SingleEG22Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG20ORL1SingleEG22" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +hltEG27EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG20ORL1SingleEG22Filter" ), + etcutEB = cms.double( 27.0 ), + etcutEE = cms.double( 27.0 ), + ncandcut = cms.int32( 1 ) +) +hltEgammaClusterShape = cms.EDProducer( "EgammaHLTClusterShapeProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + ecalRechitEB = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + ecalRechitEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + isIeta = cms.bool( True ) +) +hltEle27WP80ClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.01 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG27EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) hltHcalDigis = cms.EDProducer( "HcalRawToDigi", UnpackZDC = cms.untracked.bool( True ), FilterDataQuality = cms.bool( True ), @@ -1988,6 +3893,1784 @@ HOGrid = cms.vdouble( ), EBGrid = cms.vdouble( ) ) +hltFixedGridRhoFastjetAllCaloForMuons = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 2.5 ), + pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) +) +hltEgammaHoverE = cms.EDProducer( "EgammaHLTBcHcalIsolationProducersRegional", + caloTowerProducer = cms.InputTag( "hltTowerMakerForAll" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.14 ), + innerCone = cms.double( 0.0 ), + useSingleTower = cms.bool( False ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + etMin = cms.double( 0.0 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( False ) +) +hltEle27WP80HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEle27WP80ClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEgammaEcalPFClusterIso = cms.EDProducer( "EgammaHLTEcalPFClusterIsolationProducer", + energyEndcap = cms.double( 0.0 ), + effectiveAreaBarrel = cms.double( 0.149 ), + etaStripBarrel = cms.double( 0.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + pfClusterProducer = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + etaStripEndcap = cms.double( 0.0 ), + drVetoBarrel = cms.double( 0.0 ), + drMax = cms.double( 0.3 ), + doRhoCorrection = cms.bool( True ), + energyBarrel = cms.double( 0.0 ), + effectiveAreaEndcap = cms.double( 0.097 ), + drVetoEndcap = cms.double( 0.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ) +) +hltEle27WP80EcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.15 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.2 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEle27WP80HEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltRegionalTowerForEgamma = cms.EDProducer( "EgammaHLTCaloTowerProducer", + L1NonIsoCand = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + EMin = cms.double( 0.8 ), + EtMin = cms.double( 0.5 ), + L1IsoCand = cms.InputTag( 'hltL1extraParticles','Isolated' ), + useTowersInCone = cms.double( 0.8 ), + towerCollection = cms.InputTag( "hltTowerMakerForAll" ) +) +hltParticleFlowRecHitHCALForEgamma = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltRegionalTowerForEgamma" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +hltParticleFlowClusterHCALForEgamma = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCALForEgamma" ) +) +hltEgammaHcalPFClusterIso = cms.EDProducer( "EgammaHLTHcalPFClusterIsolationProducer", + energyEndcap = cms.double( 0.0 ), + useHF = cms.bool( False ), + effectiveAreaBarrel = cms.double( 0.06 ), + etaStripBarrel = cms.double( 0.0 ), + pfClusterProducerHFHAD = cms.InputTag( "hltParticleFlowClusterHFHADForEgamma" ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + etaStripEndcap = cms.double( 0.0 ), + drVetoBarrel = cms.double( 0.0 ), + pfClusterProducerHCAL = cms.InputTag( "hltParticleFlowClusterHCALForEgamma" ), + drMax = cms.double( 0.3 ), + doRhoCorrection = cms.bool( True ), + energyBarrel = cms.double( 0.0 ), + effectiveAreaEndcap = cms.double( 0.089 ), + drVetoEndcap = cms.double( 0.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + pfClusterProducerHFEM = cms.InputTag( "hltParticleFlowClusterHFEMForEgamma" ), + rhoScale = cms.double( 1.0 ) +) +hltEle27WP80HcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.11 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.11 ), + thrRegularEB = cms.double( 999999.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEle27WP80EcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEgammaElectronPixelSeeds = cms.EDProducer( "ElectronSeedProducer", + endcapSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + SeedConfiguration = cms.PSet( + searchInTIDTEC = cms.bool( True ), + HighPtThreshold = cms.double( 35.0 ), + r2MinF = cms.double( -0.15 ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + DeltaPhi1Low = cms.double( 0.23 ), + DeltaPhi1High = cms.double( 0.08 ), + ePhiMin1 = cms.double( -0.08 ), + PhiMin2 = cms.double( -0.004 ), + LowPtThreshold = cms.double( 3.0 ), + RegionPSet = cms.PSet( + deltaPhiRegion = cms.double( 0.4 ), + originHalfLength = cms.double( 15.0 ), + useZInVertex = cms.bool( True ), + deltaEtaRegion = cms.double( 0.1 ), + ptMin = cms.double( 1.5 ), + originRadius = cms.double( 0.2 ), + VertexProducer = cms.InputTag( "dummyVertices" ) + ), + maxHOverE = cms.double( 999999.0 ), + dynamicPhiRoad = cms.bool( False ), + ePhiMax1 = cms.double( 0.04 ), + DeltaPhi2 = cms.double( 0.004 ), + measurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SizeWindowENeg = cms.double( 0.675 ), + nSigmasDeltaZ1 = cms.double( 5.0 ), + rMaxI = cms.double( 0.2 ), + PhiMax2 = cms.double( 0.004 ), + preFilteredSeeds = cms.bool( True ), + r2MaxF = cms.double( 0.15 ), + pPhiMin1 = cms.double( -0.04 ), + initialSeeds = cms.InputTag( "noSeedsHere" ), + pPhiMax1 = cms.double( 0.08 ), + hbheModule = cms.string( "hbhereco" ), + SCEtCut = cms.double( 3.0 ), + z2MaxB = cms.double( 0.09 ), + fromTrackerSeeds = cms.bool( True ), + hcalRecHits = cms.InputTag( "hltHbhereco" ), + z2MinB = cms.double( -0.09 ), + hbheInstance = cms.string( "" ), + rMinI = cms.double( -0.2 ), + hOverEConeSize = cms.double( 0.0 ), + hOverEHBMinE = cms.double( 999999.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + applyHOverECut = cms.bool( False ), + hOverEHFMinE = cms.double( 999999.0 ), + measurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + barrelSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ) +) +hltEle27WP80PixelMatchFilter = cms.EDFilter( "HLTElectronPixelMatchFilter", + saveTags = cms.bool( False ), + s2_threshold = cms.double( 0.4 ), + npixelmatchcut = cms.double( 1.0 ), + tanhSO10InterThres = cms.double( 1.0 ), + doIsolated = cms.bool( True ), + s_a_phi1B = cms.double( 0.0069 ), + s_a_phi1F = cms.double( 0.0076 ), + s_a_phi1I = cms.double( 0.0088 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + candTag = cms.InputTag( "hltEle27WP80HcalIsoFilter" ), + tanhSO10ForwardThres = cms.double( 1.0 ), + L1IsoPixelSeedsTag = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + L1NonIsoCand = cms.InputTag( "" ), + ncandcut = cms.int32( 1 ), + tanhSO10BarrelThres = cms.double( 0.35 ), + s_a_rF = cms.double( 0.04 ), + L1NonIsoPixelSeedsTag = cms.InputTag( "" ), + s_a_rI = cms.double( 0.027 ), + s_a_phi2I = cms.double( 7.0E-4 ), + useS = cms.bool( False ), + s_a_phi2B = cms.double( 3.7E-4 ), + s_a_zB = cms.double( 0.012 ), + s_a_phi2F = cms.double( 0.00906 ) +) +hltEgammaCkfTrackCandidatesForGSF = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( True ), + useHitsSplitting = cms.bool( True ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( True ), + maxNSeeds = cms.uint32( 1000000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetTrajectoryBuilderForElectrons" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltEgammaGsfTracks = cms.EDProducer( "GsfTrackProducer", + src = cms.InputTag( "hltEgammaCkfTrackCandidatesForGSF" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + producer = cms.string( "" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPGsfElectronFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "hltESPMeasurementTracker" ), + AlgorithmName = cms.string( "gsf" ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + Propagator = cms.string( "hltESPFwdElectronPropagator" ) +) +hltEgammaGsfElectrons = cms.EDProducer( "EgammaHLTPixelMatchElectronProducers", + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseGsfTracks = cms.bool( True ), + TrackProducer = cms.InputTag( "" ), + GsfTrackProducer = cms.InputTag( "hltEgammaGsfTracks" ) +) +hltEgammaGsfTrackVars = cms.EDProducer( "EgammaHLTGsfTrackVarProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + upperTrackNrToRemoveCut = cms.int32( 9999 ), + lowerTrackNrToRemoveCut = cms.int32( -1 ), + inputCollection = cms.InputTag( "hltEgammaGsfTracks" ) +) +hltEle27WP80GsfOneOEMinusOneOPFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.05 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.05 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','OneOESuperMinusOneOP' ), + candTag = cms.InputTag( "hltEle27WP80PixelMatchFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEle27WP80GsfDetaFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.007 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.007 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Deta' ), + candTag = cms.InputTag( "hltEle27WP80GsfOneOEMinusOneOPFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEle27WP80GsfDphiFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.06 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Dphi' ), + candTag = cms.InputTag( "hltEle27WP80GsfDetaFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltElectronsVertex = cms.EDProducer( "VertexFromTrackProducer", + verbose = cms.untracked.bool( False ), + useTriggerFilterElectrons = cms.bool( False ), + beamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + isRecoCandidate = cms.bool( True ), + trackLabel = cms.InputTag( "hltEgammaGsfElectrons" ), + useTriggerFilterMuons = cms.bool( False ), + useBeamSpot = cms.bool( True ), + vertexLabel = cms.InputTag( "None" ), + triggerFilterElectronsSrc = cms.InputTag( "None" ), + triggerFilterMuonsSrc = cms.InputTag( "None" ), + useVertex = cms.bool( False ) +) +hltPixelTracksElectrons = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalTrackingRegionWithVerticesProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 0.3 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + useFixedError = cms.bool( True ), + sigmaZVertex = cms.double( 3.0 ), + fixedError = cms.double( 0.2 ), + VertexCollection = cms.InputTag( "hltElectronsVertex" ), + useFoundVertices = cms.bool( True ), + nSigmaZ = cms.double( 4.0 ), + useFakeVertices = cms.bool( True ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +hltPixelVerticesElectrons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracksElectrons" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +hltIter0ElectronsPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracksElectrons" ), + originRadius = cms.double( 0.1 ) +) +hltIter0ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0ElectronsPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter0ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter0ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter1ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter1ElectronsPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter1ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1ElectronsPixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter1ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1ElectronsPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter1ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter1ElectronsTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1ElectronsTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1ElectronsTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter1MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0ElectronsTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter2ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter2ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter2ElectronsPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter2ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2ElectronsPixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter2ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2ElectronsPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter2ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter2ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter2MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForElectrons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2ElectronsTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltEgammaEleGsfTrackIso = cms.EDProducer( "EgammaHLTElectronTrackIsolationProducers", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoVetoConeSizeBarrel = cms.double( 0.03 ), + useGsfTrack = cms.bool( True ), + useSCRefs = cms.bool( True ), + trackProducer = cms.InputTag( "hltIter2MergedForElectrons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + electronProducer = cms.InputTag( "hltEgammaGsfElectrons" ), + egTrkIsoConeSize = cms.double( 0.3 ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSizeEndcap = cms.double( 0.03 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 0.15 ) +) +hltEle27WP80GsfTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.05 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEleGsfTrackIso" ), + candTag = cms.InputTag( "hltEle27WP80GsfDphiFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), + etcutEB = cms.double( 20.0 ), + etcutEE = cms.double( 20.0 ), + ncandcut = cms.int32( 1 ) +) +hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.04 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.024 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG20EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 5.5 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 5.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPixelTracks = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 24.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +hltPrePFJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", Active_Area_Repeats = cms.int32( 5 ), doAreaFastjet = cms.bool( False ), @@ -2076,9 +5759,9 @@ src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) ) -hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", +hltSingleCaloJet200 = cms.EDFilter( "HLT1CaloJet", saveTags = cms.bool( True ), - MinPt = cms.double( 260.0 ), + MinPt = cms.double( 200.0 ), MinN = cms.int32( 1 ), MaxEta = cms.double( 5.0 ), MinMass = cms.double( -1.0 ), @@ -2086,18 +5769,2532 @@ MinE = cms.double( -1.0 ), triggerType = cms.int32( 85 ) ) -hltBoolEnd = cms.EDFilter( "HLTBool", - result = cms.bool( True ) -) -hltPrePhysics = cms.EDFilter( "HLTPrescaler", - L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), - offset = cms.uint32( 0 ) -) -hltFEDSelector = cms.EDProducer( "EvFFEDSelector", - inputTag = cms.InputTag( "rawDataCollector" ), - fedList = cms.vuint32( 1023 ) +hltTowerMakerForPF = cms.EDProducer( "CaloTowersCreator", + EBSumThreshold = cms.double( 0.2 ), + MomHBDepth = cms.double( 0.2 ), + UseEtEBTreshold = cms.bool( False ), + hfInput = cms.InputTag( "hltHfreco" ), + AllowMissingInputs = cms.bool( False ), + MomEEDepth = cms.double( 0.0 ), + EESumThreshold = cms.double( 0.45 ), + HBGrid = cms.vdouble( ), + HcalAcceptSeverityLevelForRejectedHit = cms.uint32( 9999 ), + HBThreshold = cms.double( 0.4 ), + EcalSeveritiesToBeUsedInBadTowers = cms.vstring( ), + UseEcalRecoveredHits = cms.bool( False ), + MomConstrMethod = cms.int32( 1 ), + MomHEDepth = cms.double( 0.4 ), + HcalThreshold = cms.double( -1000.0 ), + HF2Weights = cms.vdouble( ), + HOWeights = cms.vdouble( ), + EEGrid = cms.vdouble( ), + UseSymEBTreshold = cms.bool( False ), + EEWeights = cms.vdouble( ), + EEWeight = cms.double( 1.0 ), + UseHO = cms.bool( False ), + HBWeights = cms.vdouble( ), + HF1Weight = cms.double( 1.0 ), + HF2Grid = cms.vdouble( ), + HEDWeights = cms.vdouble( ), + HEDGrid = cms.vdouble( ), + EBWeight = cms.double( 1.0 ), + HF1Grid = cms.vdouble( ), + EBWeights = cms.vdouble( ), + HOWeight = cms.double( 1.0 ), + HESWeight = cms.double( 1.0 ), + HESThreshold = cms.double( 0.4 ), + hbheInput = cms.InputTag( "hltHbhereco" ), + HF2Weight = cms.double( 1.0 ), + HF2Threshold = cms.double( 1.8 ), + HcalAcceptSeverityLevel = cms.uint32( 11 ), + EEThreshold = cms.double( 0.3 ), + HOThresholdPlus1 = cms.double( 1.1 ), + HOThresholdPlus2 = cms.double( 1.1 ), + HF1Weights = cms.vdouble( ), + hoInput = cms.InputTag( "hltHoreco" ), + HF1Threshold = cms.double( 1.2 ), + HOThresholdMinus1 = cms.double( 1.1 ), + HESGrid = cms.vdouble( ), + EcutTower = cms.double( -1000.0 ), + UseRejectedRecoveredEcalHits = cms.bool( False ), + UseEtEETreshold = cms.bool( False ), + HESWeights = cms.vdouble( ), + EcalRecHitSeveritiesToBeExcluded = cms.vstring( 'kTime', + 'kWeird', + 'kBad' ), + HEDWeight = cms.double( 1.0 ), + UseSymEETreshold = cms.bool( False ), + HEDThreshold = cms.double( 0.4 ), + EBThreshold = cms.double( 0.07 ), + UseRejectedHitsOnly = cms.bool( False ), + UseHcalRecoveredHits = cms.bool( True ), + HOThresholdMinus2 = cms.double( 1.1 ), + HOThreshold0 = cms.double( 1.1 ), + ecalInputs = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + UseRejectedRecoveredHcalHits = cms.bool( False ), + MomEBDepth = cms.double( 0.3 ), + HBWeight = cms.double( 1.0 ), + HOGrid = cms.vdouble( ), + EBGrid = cms.vdouble( ) ) -hltTriggerSummaryAOD = cms.EDProducer( "TriggerSummaryProducerAOD", +hltAK4CaloJetsPF = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForPF" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltAK4CaloJetsPFEt5 = cms.EDFilter( "EtMinCaloJetSelector", + filter = cms.bool( False ), + src = cms.InputTag( "hltAK4CaloJetsPF" ), + etMin = cms.double( 5.0 ) +) +hltPixelVertices = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparerForIT" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +hltIter0PFLowPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( False ), + InputVertexCollection = cms.InputTag( "hltPixelVertices" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +hltIter0PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFLowPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter0PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter0PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltTrackIter0RefsForJets4Iter1 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + particleType = cms.string( "pi+" ) +) +hltAK4Iter0TrackJets4Iter1 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTrackIter0RefsForJets4Iter1" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltIter0TrackAndTauJets4Iter1 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter0TrackJets4Iter1" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ) +) +hltIter1ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter1MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter1PixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter1PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + precise = cms.bool( True ), + deltaPhi = cms.double( 1.0 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.1 ), + originRadius = cms.double( 0.05 ), + measurementTrackerName = cms.string( "hltIter1MaskedMeasurementTrackerEvent" ), + deltaEta = cms.double( 1.0 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + searchOpt = cms.bool( True ), + input = cms.InputTag( "hltIter0TrackAndTauJets4Iter1" ), + ptMin = cms.double( 0.5 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter1PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter1PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter1PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter1Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter1TrackRefsForJets4Iter2 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter1Merged" ), + particleType = cms.string( "pi+" ) +) +hltAK4Iter1TrackJets4Iter2 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter1TrackRefsForJets4Iter2" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.4 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltIter1TrackAndTauJets4Iter2 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.4 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter1TrackJets4Iter2" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter1Merged" ) +) +hltIter2ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter2MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter2PixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter2PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.025 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 1.2 ), + measurementTrackerName = cms.string( "hltIter2MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.8 ), + deltaEta = cms.double( 0.8 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter1TrackAndTauJets4Iter2" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter2PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter2PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter2PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter2Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter2TrackRefsForJets4Iter3 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter2Merged" ), + particleType = cms.string( "pi+" ) +) +hltAK4Iter2TrackJets4Iter3 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter2TrackRefsForJets4Iter3" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 3.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltIter2TrackAndTauJets4Iter3 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 3.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter2TrackJets4Iter3" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter2Merged" ) +) +hltIter3ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter2PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter2ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter3MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter3ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter3LayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg', + 'BPix2+FPix1_pos+FPix2_pos', + 'BPix2+FPix1_neg+FPix2_neg', + 'FPix1_pos+FPix2_pos+TEC1_pos', + 'FPix1_neg+FPix2_neg+TEC1_neg', + 'FPix2_pos+TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC2_neg+TEC3_neg', + 'BPix2+BPix3+TIB1', + 'BPix2+BPix3+TIB2', + 'BPix1+BPix3+TIB1', + 'BPix1+BPix3+TIB2', + 'BPix1+BPix2+TIB1', + 'BPix1+BPix2+TIB2' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) +) +hltIter3PFlowMixedSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter3MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter2TrackAndTauJets4Iter3" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter3LayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter3PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter3PFlowMixedSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter3PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter3PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter3PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter3" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter3PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.85, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter3PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter3PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter3Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter2Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter3TrackRefsForJets4Iter4 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter3Merged" ), + particleType = cms.string( "pi+" ) +) +hltAK4Iter3TrackJets4Iter4 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter3TrackRefsForJets4Iter4" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 4.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltIter3TrackAndTauJets4Iter4 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 4.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter3TrackJets4Iter4" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.0 ), + etaMaxCaloJet = cms.double( 2.0 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter3Merged" ) +) +hltIter4ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter3PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter3ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 70.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter4MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter4ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter4PixelLessLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'TIB1+TIB2+MTIB3', + 'TIB1+TIB2+MTID1_pos', + 'TIB1+TIB2+MTID1_neg', + 'TID1_pos+TID2_pos+TID3_pos', + 'TID1_neg+TID2_neg+TID3_neg', + 'TID1_pos+TID2_pos+MTID3_pos', + 'TID1_neg+TID2_neg+MTID3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ) + ), + MTID = cms.PSet( + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + FPix = cms.PSet( ), + MTEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + MTIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TID = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TOB = cms.PSet( ), + BPix = cms.PSet( ), + TIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ) +) +hltIter4PFlowPixelLessSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 1.0 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter4MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 12.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter3TrackAndTauJets4Iter4" ) + ), + RegionPsetFomBeamSpotBlockFixedZ = cms.PSet( + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originHalfLength = cms.double( 21.2 ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ) + ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "PixelClusterShapeSeedComparitor" ), + FilterAtHelixStage = cms.bool( True ), + FilterPixelHits = cms.bool( False ), + FilterStripHits = cms.bool( False ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ) + ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardMultiHitGenerator" ), + GeneratorPSet = cms.PSet( + ComponentName = cms.string( "MultiHitGeneratorFromChi2" ), + useFixedPreFiltering = cms.bool( False ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.0 ), + extraHitRZtolerance = cms.double( 0.0 ), + extraZKDBox = cms.double( 0.2 ), + extraRKDBox = cms.double( 0.2 ), + extraPhiKDBox = cms.double( 0.005 ), + fnSigmaRZ = cms.double( 2.0 ), + refitHits = cms.bool( True ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ), + maxChi2 = cms.double( 5.0 ), + chi2VsPtCut = cms.bool( True ), + pt_interv = cms.vdouble( 0.4, 0.7, 1.0, 2.0 ), + chi2_cuts = cms.vdouble( 3.0, 4.0, 5.0, 5.0 ), + debug = cms.bool( False ), + detIdsToDebug = cms.vint32( 0, 0, 0 ), + maxElement = cms.uint32( 100000 ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + SeedingLayers = cms.InputTag( "hltIter4PixelLessLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "WithTrackAngle" ) +) +hltIter4PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter4PFlowPixelLessSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter4PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter4PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter4PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter4" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter4PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.25 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 0 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter4PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter4Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltPFMuonMerging = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4Merged" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltMuonLinks = cms.EDProducer( "MuonLinksProducerForHLT", + pMin = cms.double( 2.5 ), + InclusiveTrackerTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + shareHitFraction = cms.double( 0.8 ), + LinkCollection = cms.InputTag( "hltL3MuonsLinksCombination" ), + ptMin = cms.double( 2.5 ) +) +hltMuons = cms.EDProducer( "MuonIdProducer", + TrackExtractorPSet = cms.PSet( + Diff_z = cms.double( 0.2 ), + inputTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + BeamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + ComponentName = cms.string( "TrackExtractor" ), + DR_Max = cms.double( 1.0 ), + Diff_r = cms.double( 0.1 ), + Chi2Prob_Min = cms.double( -1.0 ), + DR_Veto = cms.double( 0.01 ), + NHits_Min = cms.uint32( 0 ), + Chi2Ndof_Max = cms.double( 1.0E64 ), + Pt_Min = cms.double( -1.0 ), + DepositLabel = cms.untracked.string( "" ), + BeamlineOption = cms.string( "BeamSpotFromEvent" ) + ), + maxAbsEta = cms.double( 3.0 ), + fillGlobalTrackRefits = cms.bool( False ), + arbitrationCleanerOptions = cms.PSet( + Clustering = cms.bool( True ), + ME1a = cms.bool( True ), + ClusterDPhi = cms.double( 0.6 ), + OverlapDTheta = cms.double( 0.02 ), + Overlap = cms.bool( True ), + OverlapDPhi = cms.double( 0.0786 ), + ClusterDTheta = cms.double( 0.02 ) + ), + globalTrackQualityInputTag = cms.InputTag( "glbTrackQual" ), + addExtraSoftMuons = cms.bool( False ), + debugWithTruthMatching = cms.bool( False ), + CaloExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + DR_Max = cms.double( 1.0 ), + DepositInstanceLabels = cms.vstring( 'ecal', + 'hcal', + 'ho' ), + Noise_HE = cms.double( 0.2 ), + NoiseTow_EB = cms.double( 0.04 ), + NoiseTow_EE = cms.double( 0.15 ), + Threshold_H = cms.double( 0.5 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + Threshold_E = cms.double( 0.2 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + DepositLabel = cms.untracked.string( "Cal" ), + UseRecHitsFlag = cms.bool( False ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 1.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 1.0 ), + dREcalPreselection = cms.double( 1.0 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 1.0 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + Threshold_HO = cms.double( 0.5 ), + Noise_EE = cms.double( 0.1 ), + Noise_EB = cms.double( 0.025 ), + DR_Veto_H = cms.double( 0.1 ), + CenterConeOnCalIntersection = cms.bool( False ), + ComponentName = cms.string( "CaloExtractorByAssociator" ), + Noise_HB = cms.double( 0.2 ), + DR_Veto_E = cms.double( 0.07 ), + DR_Veto_HO = cms.double( 0.1 ), + Noise_HO = cms.double( 0.2 ) + ), + runArbitrationCleaner = cms.bool( False ), + fillEnergy = cms.bool( True ), + TrackerKinkFinderParameters = cms.PSet( + usePosition = cms.bool( False ), + diagonalOnly = cms.bool( False ) + ), + TimingFillerParameters = cms.PSet( + UseDT = cms.bool( True ), + ErrorDT = cms.double( 6.0 ), + EcalEnergyCut = cms.double( 0.4 ), + ErrorEB = cms.double( 2.085 ), + ErrorCSC = cms.double( 7.4 ), + CSCTimingParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + CSCTimeOffset = cms.double( 0.0 ), + CSCStripTimeOffset = cms.double( 0.0 ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + UseStripTime = cms.bool( True ), + CSCStripError = cms.double( 7.0 ), + CSCWireError = cms.double( 8.6 ), + CSCWireTimeOffset = cms.double( 0.0 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ), + PruneCut = cms.double( 100.0 ), + UseWireTime = cms.bool( True ) + ), + DTTimingParameters = cms.PSet( + HitError = cms.double( 6.0 ), + DoWireCorr = cms.bool( False ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + PruneCut = cms.double( 10000.0 ), + RequireBothProjections = cms.bool( False ), + HitsMin = cms.int32( 5 ), + DTTimeOffset = cms.double( 2.7 ), + DropTheta = cms.bool( True ), + UseSegmentT0 = cms.bool( False ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ) + ), + ErrorEE = cms.double( 6.95 ), + UseCSC = cms.bool( True ), + UseECAL = cms.bool( True ) + ), + inputCollectionTypes = cms.vstring( 'inner tracks', + 'links', + 'outer tracks' ), + minCaloCompatibility = cms.double( 0.6 ), + ecalDepositName = cms.string( "ecal" ), + minP = cms.double( 10.0 ), + fillIsolation = cms.bool( True ), + jetDepositName = cms.string( "jets" ), + hoDepositName = cms.string( "ho" ), + writeIsoDeposits = cms.bool( False ), + maxAbsPullX = cms.double( 4.0 ), + maxAbsPullY = cms.double( 9999.0 ), + minPt = cms.double( 10.0 ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 9999.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( True ), + dREcal = cms.double( 9999.0 ), + dREcalPreselection = cms.double( 0.05 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( True ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.2 ), + useMuon = cms.bool( True ), + useCalo = cms.bool( False ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( True ) + ), + JetExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + ExcludeMuonVeto = cms.bool( True ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 0.5 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 0.5 ), + dREcalPreselection = cms.double( 0.5 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.5 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + ComponentName = cms.string( "JetExtractor" ), + DR_Max = cms.double( 1.0 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + JetCollectionLabel = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + DR_Veto = cms.double( 0.1 ), + Threshold = cms.double( 5.0 ) + ), + fillGlobalTrackQuality = cms.bool( False ), + minPCaloMuon = cms.double( 1.0E9 ), + maxAbsDy = cms.double( 9999.0 ), + fillCaloCompatibility = cms.bool( True ), + fillMatching = cms.bool( True ), + MuonCaloCompatibility = cms.PSet( + allSiPMHO = cms.bool( False ), + PionTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_pions_lowPt_3_1_norm.root" ), + MuonTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_muons_lowPt_3_1_norm.root" ), + delta_eta = cms.double( 0.02 ), + delta_phi = cms.double( 0.02 ) + ), + fillTrackerKink = cms.bool( False ), + hcalDepositName = cms.string( "hcal" ), + sigmaThresholdToFillCandidateP4WithGlobalFit = cms.double( 2.0 ), + inputCollectionLabels = cms.VInputTag( 'hltPFMuonMerging','hltMuonLinks','hltL2Muons' ), + trackDepositName = cms.string( "tracker" ), + maxAbsDx = cms.double( 3.0 ), + ptThresholdToFillCandidateP4WithGlobalFit = cms.double( 200.0 ), + minNumberOfMatches = cms.int32( 1 ) +) +hltParticleFlowRecHitECALUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +hltParticleFlowRecHitHCAL = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltTowerMakerForPF" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +hltParticleFlowRecHitPSUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +hltParticleFlowClusterECALUncorrectedUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALUnseeded" ) +) +hltParticleFlowClusterPSUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSUnseeded" ) +) +hltParticleFlowClusterECALUnseeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedUnseeded" ) +) +hltParticleFlowClusterHCAL = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCAL" ) +) +hltParticleFlowClusterHFEM = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_EM" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_EM" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.19 ), + singleSpikeThresh = cms.double( 80.0 ), + detector = cms.string( "HF_EM" ), + minS4S1_a = cms.double( 0.11 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_EM" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFEM' ) +) +hltParticleFlowClusterHFHAD = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_HAD" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_HAD" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.08 ), + singleSpikeThresh = cms.double( 120.0 ), + detector = cms.string( "HF_HAD" ), + minS4S1_a = cms.double( 0.045 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_HAD" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFHAD' ) +) +hltLightPFTracks = cms.EDProducer( "LightPFTrackProducer", + TrackQuality = cms.string( "none" ), + UseQuality = cms.bool( False ), + TkColList = cms.VInputTag( 'hltPFMuonMerging' ) +) +hltParticleFlowBlock = cms.EDProducer( "PFBlockProducer", + debug = cms.untracked.bool( False ), + linkDefinitions = cms.VPSet( + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS1:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS2:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:ECAL" ), + linkerName = cms.string( "TrackAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:HCAL" ), + linkerName = cms.string( "TrackAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "ECAL:HCAL" ), + linkerName = cms.string( "ECALAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "HFEM:HFHAD" ), + linkerName = cms.string( "HFEMAndHFHADLinker" ) + ) + ), + elementImporters = cms.VPSet( + cms.PSet( importerName = cms.string( "GeneralTracksImporter" ), + useIterativeTracking = cms.bool( False ), + source = cms.InputTag( "hltLightPFTracks" ), + NHitCuts_byTrackAlgo = cms.vuint32( 3, 3, 3, 3, 3 ), + muonSrc = cms.InputTag( "hltMuons" ), + DPtOverPtCuts_byTrackAlgo = cms.vdouble( 0.5, 0.5, 0.5, 0.5, 0.5 ) + ), + cms.PSet( importerName = cms.string( "ECALClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterECALUnseeded" ), + BCtoPFCMap = cms.InputTag( "" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHCAL" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFEM" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFHAD" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ) + ) + ), + verbose = cms.untracked.bool( False ) +) +hltParticleFlow = cms.EDProducer( "PFProducer", + photon_SigmaiEtaiEta_endcap = cms.double( 0.034 ), + minPtForPostCleaning = cms.double( 20.0 ), + pf_nsigma_ECAL = cms.double( 0.0 ), + GedPhotonValueMap = cms.InputTag( 'tmpGedPhotons','valMapPFEgammaCandToPhoton' ), + sumPtTrackIsoForPhoton = cms.double( -1.0 ), + metFactorForFakes = cms.double( 4.0 ), + muon_HO = cms.vdouble( 0.9, 0.9 ), + electron_missinghits = cms.uint32( 1 ), + metSignificanceForCleaning = cms.double( 3.0 ), + usePFPhotons = cms.bool( False ), + dptRel_DispVtx = cms.double( 10.0 ), + nTrackIsoForEgammaSC = cms.uint32( 2 ), + pf_nsigma_HCAL = cms.double( 1.0 ), + cosmicRejectionDistance = cms.double( 1.0 ), + useEGammaFilters = cms.bool( False ), + useEGammaElectrons = cms.bool( False ), + nsigma_TRACK = cms.double( 1.0 ), + useEGammaSupercluster = cms.bool( False ), + sumPtTrackIsoForEgammaSC_barrel = cms.double( 4.0 ), + eventFractionForCleaning = cms.double( 0.8 ), + usePFDecays = cms.bool( False ), + rejectTracks_Step45 = cms.bool( False ), + eventFractionForRejection = cms.double( 0.8 ), + photon_MinEt = cms.double( 10.0 ), + usePFNuclearInteractions = cms.bool( False ), + maxSignificance = cms.double( 2.5 ), + electron_iso_mva_endcap = cms.double( -0.1075 ), + debug = cms.untracked.bool( False ), + pf_convID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_pfConversionAug0411.txt" ), + calibHF_eta_step = cms.vdouble( 0.0, 2.9, 3.0, 3.2, 4.2, 4.4, 4.6, 4.8, 5.2, 5.4 ), + ptErrorScale = cms.double( 8.0 ), + minSignificance = cms.double( 2.5 ), + minMomentumForPunchThrough = cms.double( 100.0 ), + pf_conv_mvaCut = cms.double( 0.0 ), + useCalibrationsFromDB = cms.bool( True ), + usePFElectrons = cms.bool( False ), + electron_iso_combIso_endcap = cms.double( 10.0 ), + photon_combIso = cms.double( 10.0 ), + electron_iso_mva_barrel = cms.double( -0.1875 ), + postHFCleaning = cms.bool( False ), + factors_45 = cms.vdouble( 10.0, 100.0 ), + cleanedHF = cms.VInputTag( 'hltParticleFlowRecHitHCAL:Cleaned','hltParticleFlowClusterHFHAD:Cleaned','hltParticleFlowClusterHFEM:Cleaned' ), + coneEcalIsoForEgammaSC = cms.double( 0.3 ), + minSignificanceReduction = cms.double( 1.4 ), + photon_SigmaiEtaiEta_barrel = cms.double( 0.0125 ), + calibHF_b_HADonly = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + minPixelHits = cms.int32( 1 ), + maxDPtOPt = cms.double( 1.0 ), + useHO = cms.bool( False ), + pf_electron_output_col = cms.string( "electrons" ), + electron_noniso_mvaCut = cms.double( -0.1 ), + GedElectronValueMap = cms.InputTag( "gedGsfElectronsTmp" ), + useVerticesForNeutral = cms.bool( True ), + pf_Res_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFRes.root" ), + PFEGammaCandidates = cms.InputTag( "particleFlowEGamma" ), + sumPtTrackIsoSlopeForPhoton = cms.double( -1.0 ), + coneTrackIsoForEgammaSC = cms.double( 0.3 ), + minDeltaMet = cms.double( 0.4 ), + pt_Error = cms.double( 1.0 ), + useProtectionsForJetMET = cms.bool( True ), + metFactorForRejection = cms.double( 4.0 ), + sumPtTrackIsoForEgammaSC_endcap = cms.double( 4.0 ), + calibHF_use = cms.bool( False ), + verbose = cms.untracked.bool( False ), + usePFConversions = cms.bool( False ), + trackQuality = cms.string( "highPurity" ), + calibPFSCEle_endcap = cms.vdouble( 1.153, -16.5975, 5.668, -0.1772, 16.22, 7.326, 0.0483, -4.068, 9.406 ), + metFactorForCleaning = cms.double( 4.0 ), + eventFactorForCosmics = cms.double( 10.0 ), + egammaElectrons = cms.InputTag( "" ), + minEnergyForPunchThrough = cms.double( 100.0 ), + minTrackerHits = cms.int32( 8 ), + iCfgCandConnector = cms.PSet( + bCalibSecondary = cms.bool( False ), + bCalibPrimary = cms.bool( False ), + bCorrect = cms.bool( False ), + nuclCalibFactors = cms.vdouble( 0.8, 0.15, 0.5, 0.5, 0.05 ) + ), + rejectTracks_Bad = cms.bool( False ), + pf_electronID_crackCorrection = cms.bool( False ), + pf_locC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFClusterCorr.root" ), + calibHF_a_EMonly = cms.vdouble( 0.96945, 0.96701, 0.76309, 0.82268, 0.87583, 0.89718, 0.98674, 1.4681, 1.458, 1.458 ), + muons = cms.InputTag( "hltMuons" ), + metFactorForHighEta = cms.double( 25.0 ), + minHFCleaningPt = cms.double( 5.0 ), + muon_HCAL = cms.vdouble( 3.0, 3.0 ), + pf_electron_mvaCut = cms.double( -0.1 ), + ptFactorForHighEta = cms.double( 2.0 ), + maxDeltaPhiPt = cms.double( 7.0 ), + pf_electronID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_PfElectrons23Jan_IntToFloat.txt" ), + sumEtEcalIsoForEgammaSC_endcap = cms.double( 2.0 ), + calibHF_b_EMHAD = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + pf_GlobC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFGlobalCorr.root" ), + photon_HoE = cms.double( 0.1 ), + sumEtEcalIsoForEgammaSC_barrel = cms.double( 1.0 ), + calibPFSCEle_Fbrem_endcap = cms.vdouble( 0.9, 6.5, -0.0692932, 0.101776, 0.995338, -0.00236548, 0.874998, 1.653, -0.0750184, 0.147, 0.923165, 4.74665E-4, 1.10782 ), + punchThroughFactor = cms.double( 3.0 ), + algoType = cms.uint32( 0 ), + electron_iso_combIso_barrel = cms.double( 10.0 ), + postMuonCleaning = cms.bool( True ), + calibPFSCEle_barrel = cms.vdouble( 1.004, -1.536, 22.88, -1.467, 0.3555, 0.6227, 14.65, 2051.0, 25.0, 0.9932, -0.5444, 0.0, 0.5438, 0.7109, 7.645, 0.2904, 0.0 ), + electron_protectionsForJetMET = cms.PSet( + maxE = cms.double( 50.0 ), + maxTrackPOverEele = cms.double( 1.0 ), + maxEcalEOverP_2 = cms.double( 0.2 ), + maxHcalEOverEcalE = cms.double( 0.1 ), + maxEcalEOverP_1 = cms.double( 0.5 ), + maxHcalEOverP = cms.double( 1.0 ), + maxEcalEOverPRes = cms.double( 0.2 ), + maxHcalE = cms.double( 10.0 ), + maxEeleOverPout = cms.double( 0.2 ), + maxNtracks = cms.double( 3.0 ), + maxEleHcalEOverEcalE = cms.double( 0.1 ), + maxDPhiIN = cms.double( 0.1 ), + maxEeleOverPoutRes = cms.double( 0.5 ) + ), + electron_iso_pt = cms.double( 10.0 ), + isolatedElectronID_mvaWeightFile = cms.string( "RecoEgamma/ElectronIdentification/data/TMVA_BDTSimpleCat_17Feb2011.weights.xml" ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + X0_Map = cms.string( "RecoParticleFlow/PFProducer/data/allX0histos.root" ), + calibPFSCEle_Fbrem_barrel = cms.vdouble( 0.6, 6.0, -0.0255975, 0.0576727, 0.975442, -5.46394E-4, 1.26147, 25.0, -0.02025, 0.04537, 0.9728, -8.962E-4, 1.172 ), + blocks = cms.InputTag( "hltParticleFlowBlock" ), + punchThroughMETFactor = cms.double( 4.0 ), + metSignificanceForRejection = cms.double( 4.0 ), + photon_protectionsForJetMET = cms.PSet( + sumPtTrackIsoSlope = cms.double( 0.001 ), + sumPtTrackIso = cms.double( 2.0 ) + ), + usePhotonReg = cms.bool( False ), + dzPV = cms.double( 0.2 ), + calibHF_a_EMHAD = cms.vdouble( 1.42215, 1.00496, 0.68961, 0.81656, 0.98504, 0.98504, 1.00802, 1.0593, 1.4576, 1.4576 ), + useRegressionFromDB = cms.bool( False ), + muon_ECAL = cms.vdouble( 0.5, 0.5 ), + usePFSCEleCalib = cms.bool( True ) +) +hltAK4PFJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "PFJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltParticleFlow" ), + inputEtMin = cms.double( 0.0 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 0.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltFixedGridRhoFastjetAll = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 5.0 ), + pfCandidatesTag = cms.InputTag( "hltParticleFlow" ) +) +hltAK4PFJetsCorrected = cms.EDProducer( "PFJetCorrectionProducer", + src = cms.InputTag( "hltAK4PFJets" ), + correctors = cms.vstring( 'hltESPAK4PFCorrection' ) +) +hltPFJetsCorrectedMatchedToCaloJets200 = cms.EDProducer( "PFJetsMatchedToFilteredCaloJetsProducer", + DeltaR = cms.double( 0.5 ), + CaloJetFilter = cms.InputTag( "hltSingleCaloJet200" ), + TriggerType = cms.int32( 85 ), + PFJetSrc = cms.InputTag( "hltAK4PFJetsCorrected" ) +) +hltSinglePFJet260 = cms.EDFilter( "HLT1PFJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltPFJetsCorrectedMatchedToCaloJets200" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrectedIDPassed" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +hltPrePhysics = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltFEDSelector = cms.EDProducer( "EvFFEDSelector", + inputTag = cms.InputTag( "rawDataCollector" ), + fedList = cms.vuint32( 1023 ) +) +hltTriggerSummaryAOD = cms.EDProducer( "TriggerSummaryProducerAOD", processName = cms.string( "@" ) ) hltTriggerSummaryRAW = cms.EDProducer( "TriggerSummaryProducerRAW", @@ -2121,26 +8318,75 @@ HLTL1UnpackerSequence = cms.Sequence( hltGtDigis + hltGctDigis + hltL1GtObjectMap + hltL1extraParticles ) HLTBeamSpot = cms.Sequence( hltScalersRawToDigi + hltOnlineBeamSpot ) HLTBeginSequence = cms.Sequence( hltTriggerType + HLTL1UnpackerSequence + HLTBeamSpot ) +HLTMuonLocalRecoSequence = cms.Sequence( hltMuonDTDigis + hltDt1DRecHits + hltDt4DSegments + hltMuonCSCDigis + hltCsc2DRecHits + hltCscSegments + hltMuonRPCDigis + hltRpcRecHits ) +HLTL2muonrecoNocandSequence = cms.Sequence( HLTMuonLocalRecoSequence + hltL2OfflineMuonSeeds + hltL2MuonSeeds + hltL2Muons ) +HLTL2muonrecoSequence = cms.Sequence( HLTL2muonrecoNocandSequence + hltL2MuonCandidates ) +HLTDoLocalPixelSequence = cms.Sequence( hltSiPixelDigis + hltSiPixelClusters + hltSiPixelClustersCache + hltSiPixelRecHits ) +HLTDoLocalStripSequence = cms.Sequence( hltSiStripExcludedFEDListProducer + hltSiStripRawToClustersFacility + hltSiStripClusters ) +HLTL3muonTkCandidateSequence = cms.Sequence( HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltL3TrajSeedOIState + hltL3TrackCandidateFromL2OIState + hltL3TkTracksFromL2OIState + hltL3MuonsOIState + hltL3TrajSeedOIHit + hltL3TrackCandidateFromL2OIHit + hltL3TkTracksFromL2OIHit + hltL3MuonsOIHit + hltL3TkFromL2OICombination + hltPixelLayerTriplets + hltPixelLayerPairs + hltMixedLayerPairs + hltL3TrajSeedIOHit + hltL3TrackCandidateFromL2IOHit + hltL3TkTracksFromL2IOHit + hltL3MuonsIOHit + hltL3TrajectorySeed + hltL3TrackCandidateFromL2 ) +HLTL3muonrecoNocandSequence = cms.Sequence( HLTL3muonTkCandidateSequence + hltL3TkTracksMergeStep1 + hltL3TkTracksFromL2 + hltL3MuonsLinksCombination + hltL3Muons ) +HLTL3muonrecoSequence = cms.Sequence( HLTL3muonrecoNocandSequence + hltL3MuonCandidates ) +HLTEndSequence = cms.Sequence( hltBoolEnd ) +HLTDoFullUnpackingEgammaEcalSequence = cms.Sequence( hltEcalDigis + hltEcalPreshowerDigis + hltEcalUncalibRecHit + hltEcalDetIdToBeRecovered + hltEcalRecHit + hltEcalPreshowerRecHit ) +HLTPFClusteringForEgamma = cms.Sequence( hltRechitInRegionsECAL + hltRechitInRegionsES + hltParticleFlowRecHitECALL1Seeded + hltParticleFlowRecHitPSL1Seeded + hltParticleFlowClusterPSL1Seeded + hltParticleFlowClusterECALUncorrectedL1Seeded + hltParticleFlowClusterECALL1Seeded + hltParticleFlowSuperClusterECALL1Seeded ) +HLTDoLocalHcalWithTowerSequence = cms.Sequence( hltHcalDigis + hltHbhereco + hltHfreco + hltHoreco + hltTowerMakerForAll ) +HLTFastJetForEgamma = cms.Sequence( hltFixedGridRhoFastjetAllCaloForMuons ) +HLTPFHcalClusteringForEgamma = cms.Sequence( hltRegionalTowerForEgamma + hltParticleFlowRecHitHCALForEgamma + hltParticleFlowClusterHCALForEgamma ) +HLTGsfElectronSequence = cms.Sequence( hltEgammaCkfTrackCandidatesForGSF + hltEgammaGsfTracks + hltEgammaGsfElectrons + hltEgammaGsfTrackVars ) +HLTRecoPixelVertexingForElectronSequence = cms.Sequence( hltPixelLayerTriplets + hltPixelTracksElectrons + hltPixelVerticesElectrons ) +HLTPixelTrackingForElectron = cms.Sequence( hltElectronsVertex + HLTDoLocalPixelSequence + HLTRecoPixelVertexingForElectronSequence ) +HLTIterativeTrackingForElectronsIteration0 = cms.Sequence( hltIter0ElectronsPixelSeedsFromPixelTracks + hltIter0ElectronsCkfTrackCandidates + hltIter0ElectronsCtfWithMaterialTracks + hltIter0ElectronsTrackSelectionHighPurity ) +HLTIterativeTrackingForElectronsIteration1 = cms.Sequence( hltIter1ElectronsClustersRefRemoval + hltIter1ElectronsMaskedMeasurementTrackerEvent + hltIter1ElectronsPixelLayerTriplets + hltIter1ElectronsPixelSeeds + hltIter1ElectronsCkfTrackCandidates + hltIter1ElectronsCtfWithMaterialTracks + hltIter1ElectronsTrackSelectionHighPurityLoose + hltIter1ElectronsTrackSelectionHighPurityTight + hltIter1ElectronsTrackSelectionHighPurity ) +HLTIterativeTrackingForElectronsIteration2 = cms.Sequence( hltIter2ElectronsClustersRefRemoval + hltIter2ElectronsMaskedMeasurementTrackerEvent + hltIter2ElectronsPixelLayerPairs + hltIter2ElectronsPixelSeeds + hltIter2ElectronsCkfTrackCandidates + hltIter2ElectronsCtfWithMaterialTracks + hltIter2ElectronsTrackSelectionHighPurity ) +HLTIterativeTrackingForElectronIter02 = cms.Sequence( HLTIterativeTrackingForElectronsIteration0 + HLTIterativeTrackingForElectronsIteration1 + hltIter1MergedForElectrons + HLTIterativeTrackingForElectronsIteration2 + hltIter2MergedForElectrons ) +HLTTrackReconstructionForIsoElectronIter02 = cms.Sequence( HLTPixelTrackingForElectron + HLTDoLocalStripSequence + HLTIterativeTrackingForElectronIter02 ) +HLTEle27WP80GsfSequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1SingleEG20ORL1SingleEG22Filter + hltEG27EtFilter + hltEgammaClusterShape + hltEle27WP80ClusterShapeFilter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltEle27WP80HEFilter + hltEgammaEcalPFClusterIso + hltEle27WP80EcalIsoFilter + HLTPFHcalClusteringForEgamma + hltEgammaHcalPFClusterIso + hltEle27WP80HcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltMixedLayerPairs + hltEgammaElectronPixelSeeds + hltEle27WP80PixelMatchFilter + HLTGsfElectronSequence + hltEle27WP80GsfOneOEMinusOneOPFilter + hltEle27WP80GsfDetaFilter + hltEle27WP80GsfDphiFilter + HLTTrackReconstructionForIsoElectronIter02 + hltEgammaEleGsfTrackIso + hltEle27WP80GsfTrackIsoFilter ) +HLTRecoPixelVertexingForPhotonsSequence = cms.Sequence( hltPixelLayerTriplets + hltPixelTracks + hltPixelVerticesForPhotons ) +HLTIterativeTrackingForPhotonsIteration0 = cms.Sequence( hltIter0PFlowPixelSeedsFromPixelTracksForPhotons + hltIter0PFlowCkfTrackCandidatesForPhotons + hltIter0PFlowCtfWithMaterialTracksForPhotons + hltIter0PFlowTrackSelectionHighPurityForPhotons ) +HLTIterativeTrackingForPhotonsIteration1 = cms.Sequence( hltIter1ClustersRefRemovalForPhotons + hltIter1MaskedMeasurementTrackerEventForPhotons + hltIter1PixelLayerTripletsForPhotons + hltIter1PFlowPixelSeedsForPhotons + hltIter1PFlowCkfTrackCandidatesForPhotons + hltIter1PFlowCtfWithMaterialTracksForPhotons + hltIter1PFlowTrackSelectionHighPurityLooseForPhotons + hltIter1PFlowTrackSelectionHighPurityTightForPhotons + hltIter1PFlowTrackSelectionHighPurityForPhotons ) +HLTIterativeTrackingForPhotonsIteration2 = cms.Sequence( hltIter2ClustersRefRemovalForPhotons + hltIter2MaskedMeasurementTrackerEventForPhotons + hltIter2PixelLayerPairsForPhotons + hltIter2PFlowPixelSeedsForPhotons + hltIter2PFlowCkfTrackCandidatesForPhotons + hltIter2PFlowCtfWithMaterialTracksForPhotons + hltIter2PFlowTrackSelectionHighPurityForPhotons ) +HLTIterativeTrackingForPhotonsIter02 = cms.Sequence( HLTIterativeTrackingForPhotonsIteration0 + HLTIterativeTrackingForPhotonsIteration1 + hltIter1MergedForPhotons + HLTIterativeTrackingForPhotonsIteration2 + hltIter2MergedForPhotons ) +HLTTrackReconstructionForIsoForPhotons = cms.Sequence( HLTDoLocalPixelSequence + HLTRecoPixelVertexingForPhotonsSequence + HLTDoLocalStripSequence + HLTIterativeTrackingForPhotonsIter02 ) +HLTPhoton20CaloIdVLIsoLSequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1SingleEG12Filter + hltEG20EtFilter + hltEgammaClusterShape + hltEG20CaloIdVLClusterShapeFilter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltEG20CaloIdVLHEFilter + hltEgammaEcalPFClusterIso + hltEG20CaloIdVLIsoLEcalIsoFilter + HLTPFHcalClusteringForEgamma + hltEgammaHcalPFClusterIso + hltEG20CaloIdVLIsoLHcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + HLTTrackReconstructionForIsoForPhotons + hltEgammaHollowTrackIso + hltEG20CaloIdVLIsoLTrackIsoFilter ) HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence = cms.Sequence( hltEcalDigis + hltEcalUncalibRecHit + hltEcalDetIdToBeRecovered + hltEcalRecHit ) HLTDoLocalHcalSequence = cms.Sequence( hltHcalDigis + hltHbhereco + hltHfreco + hltHoreco ) HLTDoCaloSequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + HLTDoLocalHcalSequence + hltTowerMakerForAll ) HLTAK4CaloJetsReconstructionSequence = cms.Sequence( HLTDoCaloSequence + hltAK4CaloJets + hltAK4CaloJetsIDPassed ) HLTAK4CaloJetsCorrectionSequence = cms.Sequence( hltFixedGridRhoFastjetAllCalo + hltAK4CaloJetsCorrected + hltAK4CaloJetsCorrectedIDPassed ) HLTAK4CaloJetsSequence = cms.Sequence( HLTAK4CaloJetsReconstructionSequence + HLTAK4CaloJetsCorrectionSequence ) -HLTEndSequence = cms.Sequence( hltBoolEnd ) +HLTDoCaloSequencePF = cms.Sequence( HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + HLTDoLocalHcalSequence + hltTowerMakerForPF ) +HLTAK4CaloJetsPrePFRecoSequence = cms.Sequence( HLTDoCaloSequencePF + hltAK4CaloJetsPF ) +HLTPreAK4PFJetsRecoSequence = cms.Sequence( HLTAK4CaloJetsPrePFRecoSequence + hltAK4CaloJetsPFEt5 ) +HLTRecopixelvertexingSequence = cms.Sequence( hltPixelLayerTriplets + hltPixelTracks + hltPixelVertices ) +HLTIterativeTrackingIteration0 = cms.Sequence( hltIter0PFLowPixelSeedsFromPixelTracks + hltIter0PFlowCkfTrackCandidates + hltIter0PFlowCtfWithMaterialTracks + hltIter0PFlowTrackSelectionHighPurity ) +HLTIter0TrackAndTauJet4Iter1Sequence = cms.Sequence( hltTrackIter0RefsForJets4Iter1 + hltAK4Iter0TrackJets4Iter1 + hltIter0TrackAndTauJets4Iter1 ) +HLTIterativeTrackingIteration1 = cms.Sequence( hltIter1ClustersRefRemoval + hltIter1MaskedMeasurementTrackerEvent + hltIter1PixelLayerTriplets + hltIter1PFlowPixelSeeds + hltIter1PFlowCkfTrackCandidates + hltIter1PFlowCtfWithMaterialTracks + hltIter1PFlowTrackSelectionHighPurityLoose + hltIter1PFlowTrackSelectionHighPurityTight + hltIter1PFlowTrackSelectionHighPurity ) +HLTIter1TrackAndTauJets4Iter2Sequence = cms.Sequence( hltIter1TrackRefsForJets4Iter2 + hltAK4Iter1TrackJets4Iter2 + hltIter1TrackAndTauJets4Iter2 ) +HLTIterativeTrackingIteration2 = cms.Sequence( hltIter2ClustersRefRemoval + hltIter2MaskedMeasurementTrackerEvent + hltIter2PixelLayerPairs + hltIter2PFlowPixelSeeds + hltIter2PFlowCkfTrackCandidates + hltIter2PFlowCtfWithMaterialTracks + hltIter2PFlowTrackSelectionHighPurity ) +HLTIter2TrackAndTauJets4Iter3Sequence = cms.Sequence( hltIter2TrackRefsForJets4Iter3 + hltAK4Iter2TrackJets4Iter3 + hltIter2TrackAndTauJets4Iter3 ) +HLTIterativeTrackingIteration3 = cms.Sequence( hltIter3ClustersRefRemoval + hltIter3MaskedMeasurementTrackerEvent + hltIter3LayerTriplets + hltIter3PFlowMixedSeeds + hltIter3PFlowCkfTrackCandidates + hltIter3PFlowCtfWithMaterialTracks + hltIter3PFlowTrackSelectionHighPurityLoose + hltIter3PFlowTrackSelectionHighPurityTight + hltIter3PFlowTrackSelectionHighPurity ) +HLTIter3TrackAndTauJets4Iter4Sequence = cms.Sequence( hltIter3TrackRefsForJets4Iter4 + hltAK4Iter3TrackJets4Iter4 + hltIter3TrackAndTauJets4Iter4 ) +HLTIterativeTrackingIteration4 = cms.Sequence( hltIter4ClustersRefRemoval + hltIter4MaskedMeasurementTrackerEvent + hltIter4PixelLessLayerTriplets + hltIter4PFlowPixelLessSeeds + hltIter4PFlowCkfTrackCandidates + hltIter4PFlowCtfWithMaterialTracks + hltIter4PFlowTrackSelectionHighPurity ) +HLTIterativeTrackingIter04 = cms.Sequence( HLTIterativeTrackingIteration0 + HLTIter0TrackAndTauJet4Iter1Sequence + HLTIterativeTrackingIteration1 + hltIter1Merged + HLTIter1TrackAndTauJets4Iter2Sequence + HLTIterativeTrackingIteration2 + hltIter2Merged + HLTIter2TrackAndTauJets4Iter3Sequence + HLTIterativeTrackingIteration3 + hltIter3Merged + HLTIter3TrackAndTauJets4Iter4Sequence + HLTIterativeTrackingIteration4 + hltIter4Merged ) +HLTTrackReconstructionForPF = cms.Sequence( HLTDoLocalPixelSequence + HLTRecopixelvertexingSequence + HLTDoLocalStripSequence + HLTIterativeTrackingIter04 + hltPFMuonMerging + hltMuonLinks + hltMuons ) +HLTPreshowerSequence = cms.Sequence( hltEcalPreshowerDigis + hltEcalPreshowerRecHit ) +HLTParticleFlowSequence = cms.Sequence( HLTPreshowerSequence + hltParticleFlowRecHitECALUnseeded + hltParticleFlowRecHitHCAL + hltParticleFlowRecHitPSUnseeded + hltParticleFlowClusterECALUncorrectedUnseeded + hltParticleFlowClusterPSUnseeded + hltParticleFlowClusterECALUnseeded + hltParticleFlowClusterHCAL + hltParticleFlowClusterHFEM + hltParticleFlowClusterHFHAD + hltLightPFTracks + hltParticleFlowBlock + hltParticleFlow ) +HLTAK4PFJetsReconstructionSequence = cms.Sequence( HLTL2muonrecoSequence + HLTL3muonrecoSequence + HLTTrackReconstructionForPF + HLTParticleFlowSequence + hltAK4PFJets ) +HLTAK4PFJetsCorrectionSequence = cms.Sequence( hltFixedGridRhoFastjetAll + hltAK4PFJetsCorrected ) +HLTAK4PFJetsSequence = cms.Sequence( HLTPreAK4PFJetsRecoSequence + HLTAK4PFJetsReconstructionSequence + HLTAK4PFJetsCorrectionSequence ) HLTriggerFirstPath = cms.Path( hltGetConditions + hltGetRaw + hltBoolFalse ) +HLT_Mu40_v1 = cms.Path( HLTBeginSequence + hltL1sMu16 + hltPreMu40 + hltL1fL1sMu16L1Filtered0 + HLTL2muonrecoSequence + hltL2fL1sMu16L1f0L2Filtered16Q + HLTL3muonrecoSequence + hltL3fL1sMu16L1f0L2f16QL3Filtered40Q + HLTEndSequence ) +HLT_Ele27_WP80_Gsf_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG20ORL1SingleEG22 + hltPreEle27WP80Gsf + HLTEle27WP80GsfSequence + HLTEndSequence ) +HLT_Photon20_CaloIdVL_IsoL_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG12 + hltPrePhoton20CaloIdVLIsoL + HLTPhoton20CaloIdVLIsoLSequence + HLTEndSequence ) +HLT_PFJet260_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleJet128 + hltPrePFJet260 + HLTAK4CaloJetsSequence + hltSingleCaloJet200 + HLTAK4PFJetsSequence + hltPFJetsCorrectedMatchedToCaloJets200 + hltSinglePFJet260 + HLTEndSequence ) HLT_CaloJet260_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleJet128 + hltPreCaloJet260 + HLTAK4CaloJetsSequence + hltSingleCaloJet260 + HLTEndSequence ) HLT_Physics_v1 = cms.Path( HLTBeginSequence + hltPrePhysics + HLTEndSequence ) HLTriggerFinalPath = cms.Path( hltGtDigis + hltScalersRawToDigi + hltFEDSelector + hltTriggerSummaryAOD + hltTriggerSummaryRAW ) HLTAnalyzerEndpath = cms.EndPath( hltL1GtTrigReport + hltTrigReport ) -HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_CaloJet260_v1, HLT_Physics_v1, HLTriggerFinalPath, HLTAnalyzerEndpath )) - -# Disable HF Noise filters in HIon menu -if 'hltHfreco' in locals(): - hltHfreco.setNoiseFlags = cms.bool( False ) +HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu40_v1, HLT_Ele27_WP80_Gsf_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_PFJet260_v1, HLT_CaloJet260_v1, HLT_Physics_v1, HLTriggerFinalPath, HLTAnalyzerEndpath )) # CMSSW version specific customizations import os diff --git a/HLTrigger/Configuration/python/HLT_PIon_cff.py b/HLTrigger/Configuration/python/HLT_PIon_cff.py index ff1816044d194..b3f011ef2d0ed 100644 --- a/HLTrigger/Configuration/python/HLT_PIon_cff.py +++ b/HLTrigger/Configuration/python/HLT_PIon_cff.py @@ -1,10 +1,10 @@ -# /dev/CMSSW_7_1_1/PIon/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/PIon/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/PIon/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/PIon/V87') ) HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -452,7 +452,9 @@ ) streams = cms.PSet( A = cms.vstring( 'InitialPD' ) ) datasets = cms.PSet( InitialPD = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ) @@ -3139,8 +3141,8 @@ hltBoolEnd = cms.EDFilter( "HLTBool", result = cms.bool( True ) ) -hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), +hltL1sL1SingleEG20ORL1SingleEG22 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG20 OR L1_SingleEG22" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -3151,7 +3153,7 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", +hltPreEle27WP80Gsf = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) @@ -3578,7 +3580,7 @@ scHybridBarrelProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ), recoEcalCandidateCollection = cms.string( "" ) ) -hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", +hltEGL1SingleEG20ORL1SingleEG22Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", doIsolated = cms.bool( False ), endcap_end = cms.double( 2.65 ), saveTags = cms.bool( False ), @@ -3588,19 +3590,19 @@ candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), region_phi_size = cms.double( 1.044 ), region_eta_size = cms.double( 0.522 ), - L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG20ORL1SingleEG22" ), candNonIsolatedTag = cms.InputTag( "" ), l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), ncandcut = cms.int32( 1 ) ) -hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", +hltEG27EtFilter = cms.EDFilter( "HLTEgammaEtFilter", saveTags = cms.bool( False ), L1NonIsoCand = cms.InputTag( "" ), relaxed = cms.untracked.bool( False ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), - etcutEB = cms.double( 20.0 ), - etcutEE = cms.double( 20.0 ), + inputTag = cms.InputTag( "hltEGL1SingleEG20ORL1SingleEG22Filter" ), + etcutEB = cms.double( 27.0 ), + etcutEE = cms.double( 27.0 ), ncandcut = cms.int32( 1 ) ) hltEgammaClusterShape = cms.EDProducer( "EgammaHLTClusterShapeProducer", @@ -3609,22 +3611,22 @@ ecalRechitEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), isIeta = cms.bool( True ) ) -hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", +hltEle27WP80ClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), thrOverE2EB = cms.double( -1.0 ), - thrRegularEE = cms.double( 0.04 ), + thrRegularEE = cms.double( 0.03 ), thrOverEEE = cms.double( -1.0 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), thrOverEEB = cms.double( -1.0 ), - thrRegularEB = cms.double( 0.024 ), + thrRegularEB = cms.double( 0.01 ), lessThan = cms.bool( True ), useEt = cms.bool( False ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaClusterShape" ), - candTag = cms.InputTag( "hltEG20EtFilter" ), + candTag = cms.InputTag( "hltEG27EtFilter" ), nonIsoTag = cms.InputTag( "" ) ) hltHcalDigis = cms.EDProducer( "HcalRawToDigi", @@ -3912,22 +3914,22 @@ rhoScale = cms.double( 1.0 ), doEtSum = cms.bool( False ) ) -hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", +hltEle27WP80HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), thrOverE2EB = cms.double( -1.0 ), thrRegularEE = cms.double( -1.0 ), - thrOverEEE = cms.double( 0.1 ), + thrOverEEE = cms.double( 0.05 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.15 ), + thrOverEEB = cms.double( 0.1 ), thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( False ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaHoverE" ), - candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + candTag = cms.InputTag( "hltEle27WP80ClusterShapeFilter" ), nonIsoTag = cms.InputTag( "" ) ) hltEgammaEcalPFClusterIso = cms.EDProducer( "EgammaHLTEcalPFClusterIsolationProducer", @@ -3947,22 +3949,22 @@ rhoMax = cms.double( 9.9999999E7 ), rhoScale = cms.double( 1.0 ) ) -hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +hltEle27WP80EcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 5.5 ), - thrOverEEE = cms.double( 0.012 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.15 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.012 ), - thrRegularEB = cms.double( 5.5 ), + thrOverEEB = cms.double( 0.2 ), + thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + candTag = cms.InputTag( "hltEle27WP80HEFilter" ), nonIsoTag = cms.InputTag( "" ) ) hltRegionalTowerForEgamma = cms.EDProducer( "EgammaHLTCaloTowerProducer", @@ -4098,25 +4100,222 @@ pfClusterProducerHFEM = cms.InputTag( "hltParticleFlowClusterHFEMForEgamma" ), rhoScale = cms.double( 1.0 ) ) -hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +hltEle27WP80HcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 3.5 ), - thrOverEEE = cms.double( 0.005 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.11 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.005 ), - thrRegularEB = cms.double( 3.5 ), + thrOverEEB = cms.double( 0.11 ), + thrRegularEB = cms.double( 999999.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + candTag = cms.InputTag( "hltEle27WP80EcalIsoFilter" ), nonIsoTag = cms.InputTag( "" ) ) -hltPixelTracks = cms.EDProducer( "PixelTrackProducer", +hltEgammaElectronPixelSeeds = cms.EDProducer( "ElectronSeedProducer", + endcapSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + SeedConfiguration = cms.PSet( + searchInTIDTEC = cms.bool( True ), + HighPtThreshold = cms.double( 35.0 ), + r2MinF = cms.double( -0.15 ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + DeltaPhi1Low = cms.double( 0.23 ), + DeltaPhi1High = cms.double( 0.08 ), + ePhiMin1 = cms.double( -0.08 ), + PhiMin2 = cms.double( -0.004 ), + LowPtThreshold = cms.double( 3.0 ), + RegionPSet = cms.PSet( + deltaPhiRegion = cms.double( 0.4 ), + originHalfLength = cms.double( 15.0 ), + useZInVertex = cms.bool( True ), + deltaEtaRegion = cms.double( 0.1 ), + ptMin = cms.double( 1.5 ), + originRadius = cms.double( 0.2 ), + VertexProducer = cms.InputTag( "dummyVertices" ) + ), + maxHOverE = cms.double( 999999.0 ), + dynamicPhiRoad = cms.bool( False ), + ePhiMax1 = cms.double( 0.04 ), + DeltaPhi2 = cms.double( 0.004 ), + measurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SizeWindowENeg = cms.double( 0.675 ), + nSigmasDeltaZ1 = cms.double( 5.0 ), + rMaxI = cms.double( 0.2 ), + PhiMax2 = cms.double( 0.004 ), + preFilteredSeeds = cms.bool( True ), + r2MaxF = cms.double( 0.15 ), + pPhiMin1 = cms.double( -0.04 ), + initialSeeds = cms.InputTag( "noSeedsHere" ), + pPhiMax1 = cms.double( 0.08 ), + hbheModule = cms.string( "hbhereco" ), + SCEtCut = cms.double( 3.0 ), + z2MaxB = cms.double( 0.09 ), + fromTrackerSeeds = cms.bool( True ), + hcalRecHits = cms.InputTag( "hltHbhereco" ), + z2MinB = cms.double( -0.09 ), + hbheInstance = cms.string( "" ), + rMinI = cms.double( -0.2 ), + hOverEConeSize = cms.double( 0.0 ), + hOverEHBMinE = cms.double( 999999.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + applyHOverECut = cms.bool( False ), + hOverEHFMinE = cms.double( 999999.0 ), + measurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + barrelSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ) +) +hltEle27WP80PixelMatchFilter = cms.EDFilter( "HLTElectronPixelMatchFilter", + saveTags = cms.bool( False ), + s2_threshold = cms.double( 0.4 ), + npixelmatchcut = cms.double( 1.0 ), + tanhSO10InterThres = cms.double( 1.0 ), + doIsolated = cms.bool( True ), + s_a_phi1B = cms.double( 0.0069 ), + s_a_phi1F = cms.double( 0.0076 ), + s_a_phi1I = cms.double( 0.0088 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + candTag = cms.InputTag( "hltEle27WP80HcalIsoFilter" ), + tanhSO10ForwardThres = cms.double( 1.0 ), + L1IsoPixelSeedsTag = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + L1NonIsoCand = cms.InputTag( "" ), + ncandcut = cms.int32( 1 ), + tanhSO10BarrelThres = cms.double( 0.35 ), + s_a_rF = cms.double( 0.04 ), + L1NonIsoPixelSeedsTag = cms.InputTag( "" ), + s_a_rI = cms.double( 0.027 ), + s_a_phi2I = cms.double( 7.0E-4 ), + useS = cms.bool( False ), + s_a_phi2B = cms.double( 3.7E-4 ), + s_a_zB = cms.double( 0.012 ), + s_a_phi2F = cms.double( 0.00906 ) +) +hltEgammaCkfTrackCandidatesForGSF = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( True ), + useHitsSplitting = cms.bool( True ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( True ), + maxNSeeds = cms.uint32( 1000000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetTrajectoryBuilderForElectrons" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltEgammaGsfTracks = cms.EDProducer( "GsfTrackProducer", + src = cms.InputTag( "hltEgammaCkfTrackCandidatesForGSF" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + producer = cms.string( "" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPGsfElectronFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "hltESPMeasurementTracker" ), + AlgorithmName = cms.string( "gsf" ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + Propagator = cms.string( "hltESPFwdElectronPropagator" ) +) +hltEgammaGsfElectrons = cms.EDProducer( "EgammaHLTPixelMatchElectronProducers", + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseGsfTracks = cms.bool( True ), + TrackProducer = cms.InputTag( "" ), + GsfTrackProducer = cms.InputTag( "hltEgammaGsfTracks" ) +) +hltEgammaGsfTrackVars = cms.EDProducer( "EgammaHLTGsfTrackVarProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + upperTrackNrToRemoveCut = cms.int32( 9999 ), + lowerTrackNrToRemoveCut = cms.int32( -1 ), + inputCollection = cms.InputTag( "hltEgammaGsfTracks" ) +) +hltEle27WP80GsfOneOEMinusOneOPFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.05 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.05 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','OneOESuperMinusOneOP' ), + candTag = cms.InputTag( "hltEle27WP80PixelMatchFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEle27WP80GsfDetaFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.007 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.007 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Deta' ), + candTag = cms.InputTag( "hltEle27WP80GsfOneOEMinusOneOPFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEle27WP80GsfDphiFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.06 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Dphi' ), + candTag = cms.InputTag( "hltEle27WP80GsfDetaFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltElectronsVertex = cms.EDProducer( "VertexFromTrackProducer", + verbose = cms.untracked.bool( False ), + useTriggerFilterElectrons = cms.bool( False ), + beamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + isRecoCandidate = cms.bool( True ), + trackLabel = cms.InputTag( "hltEgammaGsfElectrons" ), + useTriggerFilterMuons = cms.bool( False ), + useBeamSpot = cms.bool( True ), + vertexLabel = cms.InputTag( "None" ), + triggerFilterElectronsSrc = cms.InputTag( "None" ), + triggerFilterMuonsSrc = cms.InputTag( "None" ), + useVertex = cms.bool( False ) +) +hltPixelTracksElectrons = cms.EDProducer( "PixelTrackProducer", FilterPSet = cms.PSet( chi2 = cms.double( 1000.0 ), nSigmaTipMaxTolerance = cms.double( 0.0 ), @@ -4133,13 +4332,20 @@ fixImpactParameter = cms.double( 0.0 ) ), RegionFactoryPSet = cms.PSet( - ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + ComponentName = cms.string( "GlobalTrackingRegionWithVerticesProducer" ), RegionPSet = cms.PSet( precise = cms.bool( True ), originRadius = cms.double( 0.2 ), ptMin = cms.double( 0.9 ), - originHalfLength = cms.double( 24.0 ), - beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + originHalfLength = cms.double( 0.3 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + useFixedError = cms.bool( True ), + sigmaZVertex = cms.double( 3.0 ), + fixedError = cms.double( 0.2 ), + VertexCollection = cms.InputTag( "hltElectronsVertex" ), + useFoundVertices = cms.bool( True ), + nSigmaZ = cms.double( 4.0 ), + useFakeVertices = cms.bool( True ) ) ), CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), @@ -4162,32 +4368,32 @@ SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) ) ) -hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", +hltPixelVerticesElectrons = cms.EDProducer( "PixelVertexProducer", WtAverage = cms.bool( True ), Method2 = cms.bool( True ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), Verbosity = cms.int32( 0 ), UseError = cms.bool( True ), - TrackCollection = cms.InputTag( "hltPixelTracks" ), + TrackCollection = cms.InputTag( "hltPixelTracksElectrons" ), PtMin = cms.double( 1.0 ), NTrkMin = cms.int32( 2 ), ZOffset = cms.double( 5.0 ), Finder = cms.string( "DivisiveVertexFinder" ), ZSeparation = cms.double( 0.05 ) ) -hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", +hltIter0ElectronsPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", useEventsWithNoVertex = cms.bool( True ), originHalfLength = cms.double( 0.3 ), useProtoTrackKinematics = cms.bool( False ), usePV = cms.bool( True ), - InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - InputCollection = cms.InputTag( "hltPixelTracks" ), + InputCollection = cms.InputTag( "hltPixelTracksElectrons" ), originRadius = cms.double( 0.1 ) ) -hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), +hltIter0ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0ElectronsPixelSeedsFromPixelTracks" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -4206,8 +4412,8 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), +hltIter0ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), @@ -4215,7 +4421,7 @@ Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter0ForPhotons" ), + AlgorithmName = cms.string( "iter0IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -4224,7 +4430,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +hltIter0ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4251,20 +4457,20 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter0ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.4, 4.0 ), d0_par1 = cms.vdouble( 0.3, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", +hltIter1ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", doStrip = cms.bool( True ), doStripChargeCheck = cms.bool( True ), - trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + trajectories = cms.InputTag( "hltIter0ElectronsTrackSelectionHighPurity" ), oldClusterRemovalInfo = cms.InputTag( "" ), stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), pixelClusters = cms.InputTag( "hltSiPixelClusters" ), @@ -4274,12 +4480,12 @@ ), doPixel = cms.bool( True ) ) -hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", - clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), +hltIter1ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), OnDemand = cms.bool( False ), src = cms.InputTag( "hltSiStripClusters" ) ) -hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", +hltIter1ElectronsPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", layerList = cms.vstring( 'BPix1+BPix2+BPix3', 'BPix1+BPix2+FPix1_pos', 'BPix1+BPix2+FPix1_neg', @@ -4293,7 +4499,7 @@ hitErrorRZ = cms.double( 0.0036 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0051 ) ), MTEC = cms.PSet( ), @@ -4305,12 +4511,12 @@ hitErrorRZ = cms.double( 0.006 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0027 ) ), TIB = cms.PSet( ) ) -hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", +hltIter1ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", RegionFactoryPSet = cms.PSet( ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), RegionPSet = cms.PSet( @@ -4320,7 +4526,7 @@ input = cms.InputTag( "hltEgammaCandidates" ), maxNRegions = cms.int32( 10 ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), zErrorBeamSpot = cms.double( 24.2 ), deltaEta = cms.double( 0.5 ), deltaPhi = cms.double( 0.5 ), @@ -4353,7 +4559,7 @@ extraHitRZtolerance = cms.double( 0.037 ), SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) ), - SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + SeedingLayers = cms.InputTag( "hltIter1ElectronsPixelLayerTriplets" ) ), SeedCreatorPSet = cms.PSet( ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), @@ -4361,8 +4567,8 @@ ), TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) -hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), +hltIter1ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1ElectronsPixelSeeds" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -4371,7 +4577,7 @@ propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) ), TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), cleanTrajectoryAfterInOut = cms.bool( False ), useHitsSplitting = cms.bool( False ), RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), @@ -4381,16 +4587,16 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), +hltIter1ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter1ForPhotons" ), + AlgorithmName = cms.string( "iter1IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -4399,7 +4605,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +hltIter1ElectronsTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4426,17 +4632,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.9, 3.0 ), d0_par1 = cms.vdouble( 0.85, 3.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +hltIter1ElectronsTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4463,17 +4669,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 1.0, 4.0 ), d0_par1 = cms.vdouble( 1.0, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", +hltIter1ElectronsTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -4482,13 +4688,13 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + TrackProducer1 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityLoose" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityTight" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", +hltIter1MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -4497,17 +4703,17 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer1 = cms.string( "hltIter0ElectronsTrackSelectionHighPurity" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurity" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", +hltIter2ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", doStrip = cms.bool( True ), doStripChargeCheck = cms.bool( True ), - trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), - oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + trajectories = cms.InputTag( "hltIter1ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), pixelClusters = cms.InputTag( "hltSiPixelClusters" ), Common = cms.PSet( @@ -4516,12 +4722,12 @@ ), doPixel = cms.bool( True ) ) -hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", - clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), +hltIter2ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), OnDemand = cms.bool( False ), src = cms.InputTag( "hltSiStripClusters" ) ) -hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", +hltIter2ElectronsPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", layerList = cms.vstring( 'BPix1+BPix2', 'BPix1+BPix3', 'BPix2+BPix3', @@ -4543,7 +4749,7 @@ hitErrorRZ = cms.double( 0.0036 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0051 ) ), MTEC = cms.PSet( ), @@ -4555,12 +4761,12 @@ hitErrorRZ = cms.double( 0.006 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0027 ) ), TIB = cms.PSet( ) ) -hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", +hltIter2ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", RegionFactoryPSet = cms.PSet( ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), RegionPSet = cms.PSet( @@ -4569,7 +4775,7 @@ ptMin = cms.double( 1.2 ), deltaEta = cms.double( 0.5 ), deltaPhi = cms.double( 0.5 ), - vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), input = cms.InputTag( "hltEgammaCandidates" ), mode = cms.string( "VerticesFixed" ), maxNRegions = cms.int32( 10 ), @@ -4596,7 +4802,7 @@ maxElement = cms.uint32( 100000 ), SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) ), - SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + SeedingLayers = cms.InputTag( "hltIter2ElectronsPixelLayerPairs" ) ), SeedCreatorPSet = cms.PSet( ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), @@ -4604,8 +4810,8 @@ ), TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) -hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), +hltIter2ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2ElectronsPixelSeeds" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -4614,7 +4820,7 @@ propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) ), TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), cleanTrajectoryAfterInOut = cms.bool( False ), useHitsSplitting = cms.bool( False ), RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), @@ -4624,16 +4830,16 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), +hltIter2ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter2" ), + AlgorithmName = cms.string( "iter2IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -4642,7 +4848,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +hltIter2ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4669,17 +4875,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter2ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.4, 4.0 ), d0_par1 = cms.vdouble( 0.3, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", +hltIter2MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -4688,44 +4894,48 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + TrackProducer1 = cms.string( "hltIter1MergedForElectrons" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer2 = cms.string( "hltIter2ElectronsTrackSelectionHighPurity" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", +hltEgammaEleGsfTrackIso = cms.EDProducer( "EgammaHLTElectronTrackIsolationProducers", egTrkIsoStripEndcap = cms.double( 0.03 ), - egTrkIsoConeSize = cms.double( 0.29 ), - trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoVetoConeSizeBarrel = cms.double( 0.03 ), + useGsfTrack = cms.bool( True ), + useSCRefs = cms.bool( True ), + trackProducer = cms.InputTag( "hltIter2MergedForElectrons" ), egTrkIsoStripBarrel = cms.double( 0.03 ), - countTracks = cms.bool( False ), + electronProducer = cms.InputTag( "hltEgammaGsfElectrons" ), + egTrkIsoConeSize = cms.double( 0.3 ), egTrkIsoRSpan = cms.double( 999999.0 ), - egTrkIsoVetoConeSize = cms.double( 0.06 ), + egTrkIsoVetoConeSizeEndcap = cms.double( 0.03 ), recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), egTrkIsoPtMin = cms.double( 1.0 ), - egTrkIsoZSpan = cms.double( 999999.0 ) + egTrkIsoZSpan = cms.double( 0.15 ) ) -hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +hltEle27WP80GsfTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( True ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 3.5 ), - thrOverEEE = cms.double( 0.002 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.002 ), - thrRegularEB = cms.double( 3.5 ), + thrOverEEB = cms.double( 0.05 ), + thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), - isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + isoTag = cms.InputTag( "hltEgammaEleGsfTrackIso" ), + candTag = cms.InputTag( "hltEle27WP80GsfDphiFilter" ), nonIsoTag = cms.InputTag( "" ) ) -hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), +hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -4736,54 +4946,3291 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", +hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) -hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", - Active_Area_Repeats = cms.int32( 5 ), - doAreaFastjet = cms.bool( False ), - voronoiRfact = cms.double( 0.9 ), - maxBadHcalCells = cms.uint32( 9999999 ), - doAreaDiskApprox = cms.bool( True ), - maxRecoveredEcalCells = cms.uint32( 9999999 ), - jetType = cms.string( "CaloJet" ), - minSeed = cms.uint32( 14327 ), - Ghost_EtaMax = cms.double( 6.0 ), - doRhoFastjet = cms.bool( False ), - jetAlgorithm = cms.string( "AntiKt" ), - nSigmaPU = cms.double( 1.0 ), - GhostArea = cms.double( 0.01 ), - Rho_EtaMax = cms.double( 4.4 ), - maxBadEcalCells = cms.uint32( 9999999 ), - useDeterministicSeed = cms.bool( True ), - doPVCorrection = cms.bool( False ), - maxRecoveredHcalCells = cms.uint32( 9999999 ), - rParam = cms.double( 0.4 ), - maxProblematicHcalCells = cms.uint32( 9999999 ), - doOutputJets = cms.bool( True ), - src = cms.InputTag( "hltTowerMakerForAll" ), - inputEtMin = cms.double( 0.3 ), - puPtMin = cms.double( 10.0 ), - srcPVs = cms.InputTag( "NotUsed" ), - jetPtMin = cms.double( 1.0 ), - radiusPU = cms.double( 0.4 ), - maxProblematicEcalCells = cms.uint32( 9999999 ), - doPUOffsetCorr = cms.bool( False ), - inputEMin = cms.double( 0.0 ), - useMassDropTagger = cms.bool( False ), - muMin = cms.double( -1.0 ), - subtractorName = cms.string( "" ), - muCut = cms.double( -1.0 ), - subjetPtMin = cms.double( -1.0 ), - useTrimming = cms.bool( False ), - muMax = cms.double( -1.0 ), - yMin = cms.double( -1.0 ), - useFiltering = cms.bool( False ), - rFilt = cms.double( -1.0 ), - yMax = cms.double( -1.0 ), - zcut = cms.double( -1.0 ), - MinVtxNdof = cms.int32( 5 ), +hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), + etcutEB = cms.double( 20.0 ), + etcutEE = cms.double( 20.0 ), + ncandcut = cms.int32( 1 ) +) +hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.04 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.024 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG20EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 5.5 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 5.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltPixelTracks = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 24.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +hltPrePFJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForAll" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltAK4CaloJetsIDPassed = cms.EDProducer( "HLTCaloJetIDProducer", + min_N90 = cms.int32( -2 ), + min_N90hits = cms.int32( 2 ), + min_EMF = cms.double( 1.0E-6 ), + jetsInput = cms.InputTag( "hltAK4CaloJets" ), + JetIDParams = cms.PSet( + useRecHits = cms.bool( True ), + hbheRecHitsColl = cms.InputTag( "hltHbhereco" ), + hoRecHitsColl = cms.InputTag( "hltHoreco" ), + hfRecHitsColl = cms.InputTag( "hltHfreco" ), + ebRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + eeRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) + ), + max_EMF = cms.double( 999.0 ) +) +hltFixedGridRhoFastjetAllCalo = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 5.0 ), + pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) +) +hltAK4CaloJetsCorrected = cms.EDProducer( "CaloJetCorrectionProducer", + src = cms.InputTag( "hltAK4CaloJets" ), + correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +) +hltAK4CaloJetsCorrectedIDPassed = cms.EDProducer( "CaloJetCorrectionProducer", + src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), + correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +) +hltSingleCaloJet200 = cms.EDFilter( "HLT1CaloJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 200.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrectedIDPassed" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +hltTowerMakerForPF = cms.EDProducer( "CaloTowersCreator", + EBSumThreshold = cms.double( 0.2 ), + MomHBDepth = cms.double( 0.2 ), + UseEtEBTreshold = cms.bool( False ), + hfInput = cms.InputTag( "hltHfreco" ), + AllowMissingInputs = cms.bool( False ), + MomEEDepth = cms.double( 0.0 ), + EESumThreshold = cms.double( 0.45 ), + HBGrid = cms.vdouble( ), + HcalAcceptSeverityLevelForRejectedHit = cms.uint32( 9999 ), + HBThreshold = cms.double( 0.4 ), + EcalSeveritiesToBeUsedInBadTowers = cms.vstring( ), + UseEcalRecoveredHits = cms.bool( False ), + MomConstrMethod = cms.int32( 1 ), + MomHEDepth = cms.double( 0.4 ), + HcalThreshold = cms.double( -1000.0 ), + HF2Weights = cms.vdouble( ), + HOWeights = cms.vdouble( ), + EEGrid = cms.vdouble( ), + UseSymEBTreshold = cms.bool( False ), + EEWeights = cms.vdouble( ), + EEWeight = cms.double( 1.0 ), + UseHO = cms.bool( False ), + HBWeights = cms.vdouble( ), + HF1Weight = cms.double( 1.0 ), + HF2Grid = cms.vdouble( ), + HEDWeights = cms.vdouble( ), + HEDGrid = cms.vdouble( ), + EBWeight = cms.double( 1.0 ), + HF1Grid = cms.vdouble( ), + EBWeights = cms.vdouble( ), + HOWeight = cms.double( 1.0 ), + HESWeight = cms.double( 1.0 ), + HESThreshold = cms.double( 0.4 ), + hbheInput = cms.InputTag( "hltHbhereco" ), + HF2Weight = cms.double( 1.0 ), + HF2Threshold = cms.double( 1.8 ), + HcalAcceptSeverityLevel = cms.uint32( 11 ), + EEThreshold = cms.double( 0.3 ), + HOThresholdPlus1 = cms.double( 1.1 ), + HOThresholdPlus2 = cms.double( 1.1 ), + HF1Weights = cms.vdouble( ), + hoInput = cms.InputTag( "hltHoreco" ), + HF1Threshold = cms.double( 1.2 ), + HOThresholdMinus1 = cms.double( 1.1 ), + HESGrid = cms.vdouble( ), + EcutTower = cms.double( -1000.0 ), + UseRejectedRecoveredEcalHits = cms.bool( False ), + UseEtEETreshold = cms.bool( False ), + HESWeights = cms.vdouble( ), + EcalRecHitSeveritiesToBeExcluded = cms.vstring( 'kTime', + 'kWeird', + 'kBad' ), + HEDWeight = cms.double( 1.0 ), + UseSymEETreshold = cms.bool( False ), + HEDThreshold = cms.double( 0.4 ), + EBThreshold = cms.double( 0.07 ), + UseRejectedHitsOnly = cms.bool( False ), + UseHcalRecoveredHits = cms.bool( True ), + HOThresholdMinus2 = cms.double( 1.1 ), + HOThreshold0 = cms.double( 1.1 ), + ecalInputs = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + UseRejectedRecoveredHcalHits = cms.bool( False ), + MomEBDepth = cms.double( 0.3 ), + HBWeight = cms.double( 1.0 ), + HOGrid = cms.vdouble( ), + EBGrid = cms.vdouble( ) +) +hltAK4CaloJetsPF = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForPF" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltAK4CaloJetsPFEt5 = cms.EDFilter( "EtMinCaloJetSelector", + filter = cms.bool( False ), + src = cms.InputTag( "hltAK4CaloJetsPF" ), + etMin = cms.double( 5.0 ) +) +hltPixelVertices = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparerForIT" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +hltIter0PFLowPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( False ), + InputVertexCollection = cms.InputTag( "hltPixelVertices" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +hltIter0PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFLowPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter0PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter0PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltTrackIter0RefsForJets4Iter1 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + particleType = cms.string( "pi+" ) +) +hltAK4Iter0TrackJets4Iter1 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTrackIter0RefsForJets4Iter1" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltIter0TrackAndTauJets4Iter1 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter0TrackJets4Iter1" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ) +) +hltIter1ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter1MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter1PixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter1PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + precise = cms.bool( True ), + deltaPhi = cms.double( 1.0 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.1 ), + originRadius = cms.double( 0.05 ), + measurementTrackerName = cms.string( "hltIter1MaskedMeasurementTrackerEvent" ), + deltaEta = cms.double( 1.0 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + searchOpt = cms.bool( True ), + input = cms.InputTag( "hltIter0TrackAndTauJets4Iter1" ), + ptMin = cms.double( 0.5 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter1PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter1PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter1PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter1PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter1Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter1TrackRefsForJets4Iter2 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter1Merged" ), + particleType = cms.string( "pi+" ) +) +hltAK4Iter1TrackJets4Iter2 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter1TrackRefsForJets4Iter2" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.4 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltIter1TrackAndTauJets4Iter2 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.4 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter1TrackJets4Iter2" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter1Merged" ) +) +hltIter2ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter2MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter2PixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +hltIter2PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.025 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 1.2 ), + measurementTrackerName = cms.string( "hltIter2MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.8 ), + deltaEta = cms.double( 0.8 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter1TrackAndTauJets4Iter2" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter2PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter2PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter2PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter2Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter2TrackRefsForJets4Iter3 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter2Merged" ), + particleType = cms.string( "pi+" ) +) +hltAK4Iter2TrackJets4Iter3 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter2TrackRefsForJets4Iter3" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 3.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltIter2TrackAndTauJets4Iter3 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 3.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter2TrackJets4Iter3" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter2Merged" ) +) +hltIter3ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter2PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter2ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter3MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter3ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter3LayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg', + 'BPix2+FPix1_pos+FPix2_pos', + 'BPix2+FPix1_neg+FPix2_neg', + 'FPix1_pos+FPix2_pos+TEC1_pos', + 'FPix1_neg+FPix2_neg+TEC1_neg', + 'FPix2_pos+TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC2_neg+TEC3_neg', + 'BPix2+BPix3+TIB1', + 'BPix2+BPix3+TIB2', + 'BPix1+BPix3+TIB1', + 'BPix1+BPix3+TIB2', + 'BPix1+BPix2+TIB1', + 'BPix1+BPix2+TIB2' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) +) +hltIter3PFlowMixedSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter3MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter2TrackAndTauJets4Iter3" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter3LayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +hltIter3PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter3PFlowMixedSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter3PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter3PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter3PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter3" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter3PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.85, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter3PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter3PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter3Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter2Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltIter3TrackRefsForJets4Iter4 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter3Merged" ), + particleType = cms.string( "pi+" ) +) +hltAK4Iter3TrackJets4Iter4 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter3TrackRefsForJets4Iter4" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 4.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +hltIter3TrackAndTauJets4Iter4 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 4.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter3TrackJets4Iter4" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.0 ), + etaMaxCaloJet = cms.double( 2.0 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter3Merged" ) +) +hltIter4ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter3PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter3ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 70.0 ) + ), + doPixel = cms.bool( True ) +) +hltIter4MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter4ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +hltIter4PixelLessLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'TIB1+TIB2+MTIB3', + 'TIB1+TIB2+MTID1_pos', + 'TIB1+TIB2+MTID1_neg', + 'TID1_pos+TID2_pos+TID3_pos', + 'TID1_neg+TID2_neg+TID3_neg', + 'TID1_pos+TID2_pos+MTID3_pos', + 'TID1_neg+TID2_neg+MTID3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ) + ), + MTID = cms.PSet( + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + FPix = cms.PSet( ), + MTEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + MTIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TID = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TOB = cms.PSet( ), + BPix = cms.PSet( ), + TIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ) +) +hltIter4PFlowPixelLessSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 1.0 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter4MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 12.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter3TrackAndTauJets4Iter4" ) + ), + RegionPsetFomBeamSpotBlockFixedZ = cms.PSet( + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originHalfLength = cms.double( 21.2 ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ) + ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "PixelClusterShapeSeedComparitor" ), + FilterAtHelixStage = cms.bool( True ), + FilterPixelHits = cms.bool( False ), + FilterStripHits = cms.bool( False ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ) + ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardMultiHitGenerator" ), + GeneratorPSet = cms.PSet( + ComponentName = cms.string( "MultiHitGeneratorFromChi2" ), + useFixedPreFiltering = cms.bool( False ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.0 ), + extraHitRZtolerance = cms.double( 0.0 ), + extraZKDBox = cms.double( 0.2 ), + extraRKDBox = cms.double( 0.2 ), + extraPhiKDBox = cms.double( 0.005 ), + fnSigmaRZ = cms.double( 2.0 ), + refitHits = cms.bool( True ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ), + maxChi2 = cms.double( 5.0 ), + chi2VsPtCut = cms.bool( True ), + pt_interv = cms.vdouble( 0.4, 0.7, 1.0, 2.0 ), + chi2_cuts = cms.vdouble( 3.0, 4.0, 5.0, 5.0 ), + debug = cms.bool( False ), + detIdsToDebug = cms.vint32( 0, 0, 0 ), + maxElement = cms.uint32( 100000 ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + SeedingLayers = cms.InputTag( "hltIter4PixelLessLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "WithTrackAngle" ) +) +hltIter4PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter4PFlowPixelLessSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter4PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +hltIter4PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter4PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter4" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +hltIter4PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.25 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 0 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter4PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +hltIter4Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltPFMuonMerging = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4Merged" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +hltMuonLinks = cms.EDProducer( "MuonLinksProducerForHLT", + pMin = cms.double( 2.5 ), + InclusiveTrackerTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + shareHitFraction = cms.double( 0.8 ), + LinkCollection = cms.InputTag( "hltL3MuonsLinksCombination" ), + ptMin = cms.double( 2.5 ) +) +hltMuons = cms.EDProducer( "MuonIdProducer", + TrackExtractorPSet = cms.PSet( + Diff_z = cms.double( 0.2 ), + inputTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + BeamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + ComponentName = cms.string( "TrackExtractor" ), + DR_Max = cms.double( 1.0 ), + Diff_r = cms.double( 0.1 ), + Chi2Prob_Min = cms.double( -1.0 ), + DR_Veto = cms.double( 0.01 ), + NHits_Min = cms.uint32( 0 ), + Chi2Ndof_Max = cms.double( 1.0E64 ), + Pt_Min = cms.double( -1.0 ), + DepositLabel = cms.untracked.string( "" ), + BeamlineOption = cms.string( "BeamSpotFromEvent" ) + ), + maxAbsEta = cms.double( 3.0 ), + fillGlobalTrackRefits = cms.bool( False ), + arbitrationCleanerOptions = cms.PSet( + Clustering = cms.bool( True ), + ME1a = cms.bool( True ), + ClusterDPhi = cms.double( 0.6 ), + OverlapDTheta = cms.double( 0.02 ), + Overlap = cms.bool( True ), + OverlapDPhi = cms.double( 0.0786 ), + ClusterDTheta = cms.double( 0.02 ) + ), + globalTrackQualityInputTag = cms.InputTag( "glbTrackQual" ), + addExtraSoftMuons = cms.bool( False ), + debugWithTruthMatching = cms.bool( False ), + CaloExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + DR_Max = cms.double( 1.0 ), + DepositInstanceLabels = cms.vstring( 'ecal', + 'hcal', + 'ho' ), + Noise_HE = cms.double( 0.2 ), + NoiseTow_EB = cms.double( 0.04 ), + NoiseTow_EE = cms.double( 0.15 ), + Threshold_H = cms.double( 0.5 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + Threshold_E = cms.double( 0.2 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + DepositLabel = cms.untracked.string( "Cal" ), + UseRecHitsFlag = cms.bool( False ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 1.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 1.0 ), + dREcalPreselection = cms.double( 1.0 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 1.0 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + Threshold_HO = cms.double( 0.5 ), + Noise_EE = cms.double( 0.1 ), + Noise_EB = cms.double( 0.025 ), + DR_Veto_H = cms.double( 0.1 ), + CenterConeOnCalIntersection = cms.bool( False ), + ComponentName = cms.string( "CaloExtractorByAssociator" ), + Noise_HB = cms.double( 0.2 ), + DR_Veto_E = cms.double( 0.07 ), + DR_Veto_HO = cms.double( 0.1 ), + Noise_HO = cms.double( 0.2 ) + ), + runArbitrationCleaner = cms.bool( False ), + fillEnergy = cms.bool( True ), + TrackerKinkFinderParameters = cms.PSet( + usePosition = cms.bool( False ), + diagonalOnly = cms.bool( False ) + ), + TimingFillerParameters = cms.PSet( + UseDT = cms.bool( True ), + ErrorDT = cms.double( 6.0 ), + EcalEnergyCut = cms.double( 0.4 ), + ErrorEB = cms.double( 2.085 ), + ErrorCSC = cms.double( 7.4 ), + CSCTimingParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + CSCTimeOffset = cms.double( 0.0 ), + CSCStripTimeOffset = cms.double( 0.0 ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + UseStripTime = cms.bool( True ), + CSCStripError = cms.double( 7.0 ), + CSCWireError = cms.double( 8.6 ), + CSCWireTimeOffset = cms.double( 0.0 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ), + PruneCut = cms.double( 100.0 ), + UseWireTime = cms.bool( True ) + ), + DTTimingParameters = cms.PSet( + HitError = cms.double( 6.0 ), + DoWireCorr = cms.bool( False ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + PruneCut = cms.double( 10000.0 ), + RequireBothProjections = cms.bool( False ), + HitsMin = cms.int32( 5 ), + DTTimeOffset = cms.double( 2.7 ), + DropTheta = cms.bool( True ), + UseSegmentT0 = cms.bool( False ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ) + ), + ErrorEE = cms.double( 6.95 ), + UseCSC = cms.bool( True ), + UseECAL = cms.bool( True ) + ), + inputCollectionTypes = cms.vstring( 'inner tracks', + 'links', + 'outer tracks' ), + minCaloCompatibility = cms.double( 0.6 ), + ecalDepositName = cms.string( "ecal" ), + minP = cms.double( 10.0 ), + fillIsolation = cms.bool( True ), + jetDepositName = cms.string( "jets" ), + hoDepositName = cms.string( "ho" ), + writeIsoDeposits = cms.bool( False ), + maxAbsPullX = cms.double( 4.0 ), + maxAbsPullY = cms.double( 9999.0 ), + minPt = cms.double( 10.0 ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 9999.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( True ), + dREcal = cms.double( 9999.0 ), + dREcalPreselection = cms.double( 0.05 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( True ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.2 ), + useMuon = cms.bool( True ), + useCalo = cms.bool( False ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( True ) + ), + JetExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + ExcludeMuonVeto = cms.bool( True ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 0.5 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 0.5 ), + dREcalPreselection = cms.double( 0.5 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.5 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + ComponentName = cms.string( "JetExtractor" ), + DR_Max = cms.double( 1.0 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + JetCollectionLabel = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + DR_Veto = cms.double( 0.1 ), + Threshold = cms.double( 5.0 ) + ), + fillGlobalTrackQuality = cms.bool( False ), + minPCaloMuon = cms.double( 1.0E9 ), + maxAbsDy = cms.double( 9999.0 ), + fillCaloCompatibility = cms.bool( True ), + fillMatching = cms.bool( True ), + MuonCaloCompatibility = cms.PSet( + allSiPMHO = cms.bool( False ), + PionTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_pions_lowPt_3_1_norm.root" ), + MuonTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_muons_lowPt_3_1_norm.root" ), + delta_eta = cms.double( 0.02 ), + delta_phi = cms.double( 0.02 ) + ), + fillTrackerKink = cms.bool( False ), + hcalDepositName = cms.string( "hcal" ), + sigmaThresholdToFillCandidateP4WithGlobalFit = cms.double( 2.0 ), + inputCollectionLabels = cms.VInputTag( 'hltPFMuonMerging','hltMuonLinks','hltL2Muons' ), + trackDepositName = cms.string( "tracker" ), + maxAbsDx = cms.double( 3.0 ), + ptThresholdToFillCandidateP4WithGlobalFit = cms.double( 200.0 ), + minNumberOfMatches = cms.int32( 1 ) +) +hltParticleFlowRecHitECALUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +hltParticleFlowRecHitHCAL = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltTowerMakerForPF" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +hltParticleFlowRecHitPSUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +hltParticleFlowClusterECALUncorrectedUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALUnseeded" ) +) +hltParticleFlowClusterPSUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSUnseeded" ) +) +hltParticleFlowClusterECALUnseeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedUnseeded" ) +) +hltParticleFlowClusterHCAL = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCAL" ) +) +hltParticleFlowClusterHFEM = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_EM" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_EM" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.19 ), + singleSpikeThresh = cms.double( 80.0 ), + detector = cms.string( "HF_EM" ), + minS4S1_a = cms.double( 0.11 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_EM" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFEM' ) +) +hltParticleFlowClusterHFHAD = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_HAD" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_HAD" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.08 ), + singleSpikeThresh = cms.double( 120.0 ), + detector = cms.string( "HF_HAD" ), + minS4S1_a = cms.double( 0.045 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_HAD" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFHAD' ) +) +hltLightPFTracks = cms.EDProducer( "LightPFTrackProducer", + TrackQuality = cms.string( "none" ), + UseQuality = cms.bool( False ), + TkColList = cms.VInputTag( 'hltPFMuonMerging' ) +) +hltParticleFlowBlock = cms.EDProducer( "PFBlockProducer", + debug = cms.untracked.bool( False ), + linkDefinitions = cms.VPSet( + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS1:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS2:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:ECAL" ), + linkerName = cms.string( "TrackAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:HCAL" ), + linkerName = cms.string( "TrackAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "ECAL:HCAL" ), + linkerName = cms.string( "ECALAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "HFEM:HFHAD" ), + linkerName = cms.string( "HFEMAndHFHADLinker" ) + ) + ), + elementImporters = cms.VPSet( + cms.PSet( importerName = cms.string( "GeneralTracksImporter" ), + useIterativeTracking = cms.bool( False ), + source = cms.InputTag( "hltLightPFTracks" ), + NHitCuts_byTrackAlgo = cms.vuint32( 3, 3, 3, 3, 3 ), + muonSrc = cms.InputTag( "hltMuons" ), + DPtOverPtCuts_byTrackAlgo = cms.vdouble( 0.5, 0.5, 0.5, 0.5, 0.5 ) + ), + cms.PSet( importerName = cms.string( "ECALClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterECALUnseeded" ), + BCtoPFCMap = cms.InputTag( "" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHCAL" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFEM" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFHAD" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ) + ) + ), + verbose = cms.untracked.bool( False ) +) +hltParticleFlow = cms.EDProducer( "PFProducer", + photon_SigmaiEtaiEta_endcap = cms.double( 0.034 ), + minPtForPostCleaning = cms.double( 20.0 ), + pf_nsigma_ECAL = cms.double( 0.0 ), + GedPhotonValueMap = cms.InputTag( 'tmpGedPhotons','valMapPFEgammaCandToPhoton' ), + sumPtTrackIsoForPhoton = cms.double( -1.0 ), + metFactorForFakes = cms.double( 4.0 ), + muon_HO = cms.vdouble( 0.9, 0.9 ), + electron_missinghits = cms.uint32( 1 ), + metSignificanceForCleaning = cms.double( 3.0 ), + usePFPhotons = cms.bool( False ), + dptRel_DispVtx = cms.double( 10.0 ), + nTrackIsoForEgammaSC = cms.uint32( 2 ), + pf_nsigma_HCAL = cms.double( 1.0 ), + cosmicRejectionDistance = cms.double( 1.0 ), + useEGammaFilters = cms.bool( False ), + useEGammaElectrons = cms.bool( False ), + nsigma_TRACK = cms.double( 1.0 ), + useEGammaSupercluster = cms.bool( False ), + sumPtTrackIsoForEgammaSC_barrel = cms.double( 4.0 ), + eventFractionForCleaning = cms.double( 0.8 ), + usePFDecays = cms.bool( False ), + rejectTracks_Step45 = cms.bool( False ), + eventFractionForRejection = cms.double( 0.8 ), + photon_MinEt = cms.double( 10.0 ), + usePFNuclearInteractions = cms.bool( False ), + maxSignificance = cms.double( 2.5 ), + electron_iso_mva_endcap = cms.double( -0.1075 ), + debug = cms.untracked.bool( False ), + pf_convID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_pfConversionAug0411.txt" ), + calibHF_eta_step = cms.vdouble( 0.0, 2.9, 3.0, 3.2, 4.2, 4.4, 4.6, 4.8, 5.2, 5.4 ), + ptErrorScale = cms.double( 8.0 ), + minSignificance = cms.double( 2.5 ), + minMomentumForPunchThrough = cms.double( 100.0 ), + pf_conv_mvaCut = cms.double( 0.0 ), + useCalibrationsFromDB = cms.bool( True ), + usePFElectrons = cms.bool( False ), + electron_iso_combIso_endcap = cms.double( 10.0 ), + photon_combIso = cms.double( 10.0 ), + electron_iso_mva_barrel = cms.double( -0.1875 ), + postHFCleaning = cms.bool( False ), + factors_45 = cms.vdouble( 10.0, 100.0 ), + cleanedHF = cms.VInputTag( 'hltParticleFlowRecHitHCAL:Cleaned','hltParticleFlowClusterHFHAD:Cleaned','hltParticleFlowClusterHFEM:Cleaned' ), + coneEcalIsoForEgammaSC = cms.double( 0.3 ), + minSignificanceReduction = cms.double( 1.4 ), + photon_SigmaiEtaiEta_barrel = cms.double( 0.0125 ), + calibHF_b_HADonly = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + minPixelHits = cms.int32( 1 ), + maxDPtOPt = cms.double( 1.0 ), + useHO = cms.bool( False ), + pf_electron_output_col = cms.string( "electrons" ), + electron_noniso_mvaCut = cms.double( -0.1 ), + GedElectronValueMap = cms.InputTag( "gedGsfElectronsTmp" ), + useVerticesForNeutral = cms.bool( True ), + pf_Res_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFRes.root" ), + PFEGammaCandidates = cms.InputTag( "particleFlowEGamma" ), + sumPtTrackIsoSlopeForPhoton = cms.double( -1.0 ), + coneTrackIsoForEgammaSC = cms.double( 0.3 ), + minDeltaMet = cms.double( 0.4 ), + pt_Error = cms.double( 1.0 ), + useProtectionsForJetMET = cms.bool( True ), + metFactorForRejection = cms.double( 4.0 ), + sumPtTrackIsoForEgammaSC_endcap = cms.double( 4.0 ), + calibHF_use = cms.bool( False ), + verbose = cms.untracked.bool( False ), + usePFConversions = cms.bool( False ), + trackQuality = cms.string( "highPurity" ), + calibPFSCEle_endcap = cms.vdouble( 1.153, -16.5975, 5.668, -0.1772, 16.22, 7.326, 0.0483, -4.068, 9.406 ), + metFactorForCleaning = cms.double( 4.0 ), + eventFactorForCosmics = cms.double( 10.0 ), + egammaElectrons = cms.InputTag( "" ), + minEnergyForPunchThrough = cms.double( 100.0 ), + minTrackerHits = cms.int32( 8 ), + iCfgCandConnector = cms.PSet( + bCalibSecondary = cms.bool( False ), + bCalibPrimary = cms.bool( False ), + bCorrect = cms.bool( False ), + nuclCalibFactors = cms.vdouble( 0.8, 0.15, 0.5, 0.5, 0.05 ) + ), + rejectTracks_Bad = cms.bool( False ), + pf_electronID_crackCorrection = cms.bool( False ), + pf_locC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFClusterCorr.root" ), + calibHF_a_EMonly = cms.vdouble( 0.96945, 0.96701, 0.76309, 0.82268, 0.87583, 0.89718, 0.98674, 1.4681, 1.458, 1.458 ), + muons = cms.InputTag( "hltMuons" ), + metFactorForHighEta = cms.double( 25.0 ), + minHFCleaningPt = cms.double( 5.0 ), + muon_HCAL = cms.vdouble( 3.0, 3.0 ), + pf_electron_mvaCut = cms.double( -0.1 ), + ptFactorForHighEta = cms.double( 2.0 ), + maxDeltaPhiPt = cms.double( 7.0 ), + pf_electronID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_PfElectrons23Jan_IntToFloat.txt" ), + sumEtEcalIsoForEgammaSC_endcap = cms.double( 2.0 ), + calibHF_b_EMHAD = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + pf_GlobC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFGlobalCorr.root" ), + photon_HoE = cms.double( 0.1 ), + sumEtEcalIsoForEgammaSC_barrel = cms.double( 1.0 ), + calibPFSCEle_Fbrem_endcap = cms.vdouble( 0.9, 6.5, -0.0692932, 0.101776, 0.995338, -0.00236548, 0.874998, 1.653, -0.0750184, 0.147, 0.923165, 4.74665E-4, 1.10782 ), + punchThroughFactor = cms.double( 3.0 ), + algoType = cms.uint32( 0 ), + electron_iso_combIso_barrel = cms.double( 10.0 ), + postMuonCleaning = cms.bool( True ), + calibPFSCEle_barrel = cms.vdouble( 1.004, -1.536, 22.88, -1.467, 0.3555, 0.6227, 14.65, 2051.0, 25.0, 0.9932, -0.5444, 0.0, 0.5438, 0.7109, 7.645, 0.2904, 0.0 ), + electron_protectionsForJetMET = cms.PSet( + maxE = cms.double( 50.0 ), + maxTrackPOverEele = cms.double( 1.0 ), + maxEcalEOverP_2 = cms.double( 0.2 ), + maxHcalEOverEcalE = cms.double( 0.1 ), + maxEcalEOverP_1 = cms.double( 0.5 ), + maxHcalEOverP = cms.double( 1.0 ), + maxEcalEOverPRes = cms.double( 0.2 ), + maxHcalE = cms.double( 10.0 ), + maxEeleOverPout = cms.double( 0.2 ), + maxNtracks = cms.double( 3.0 ), + maxEleHcalEOverEcalE = cms.double( 0.1 ), + maxDPhiIN = cms.double( 0.1 ), + maxEeleOverPoutRes = cms.double( 0.5 ) + ), + electron_iso_pt = cms.double( 10.0 ), + isolatedElectronID_mvaWeightFile = cms.string( "RecoEgamma/ElectronIdentification/data/TMVA_BDTSimpleCat_17Feb2011.weights.xml" ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + X0_Map = cms.string( "RecoParticleFlow/PFProducer/data/allX0histos.root" ), + calibPFSCEle_Fbrem_barrel = cms.vdouble( 0.6, 6.0, -0.0255975, 0.0576727, 0.975442, -5.46394E-4, 1.26147, 25.0, -0.02025, 0.04537, 0.9728, -8.962E-4, 1.172 ), + blocks = cms.InputTag( "hltParticleFlowBlock" ), + punchThroughMETFactor = cms.double( 4.0 ), + metSignificanceForRejection = cms.double( 4.0 ), + photon_protectionsForJetMET = cms.PSet( + sumPtTrackIsoSlope = cms.double( 0.001 ), + sumPtTrackIso = cms.double( 2.0 ) + ), + usePhotonReg = cms.bool( False ), + dzPV = cms.double( 0.2 ), + calibHF_a_EMHAD = cms.vdouble( 1.42215, 1.00496, 0.68961, 0.81656, 0.98504, 0.98504, 1.00802, 1.0593, 1.4576, 1.4576 ), + useRegressionFromDB = cms.bool( False ), + muon_ECAL = cms.vdouble( 0.5, 0.5 ), + usePFSCEleCalib = cms.bool( True ) +) +hltAK4PFJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "PFJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltParticleFlow" ), + inputEtMin = cms.double( 0.0 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 0.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), MaxVtxZ = cms.double( 15.0 ), UseOnlyVertexTracks = cms.bool( False ), dRMin = cms.double( -1.0 ), @@ -4800,33 +8247,34 @@ DxyTrVtxMax = cms.double( 0.0 ), useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) ) -hltAK4CaloJetsIDPassed = cms.EDProducer( "HLTCaloJetIDProducer", - min_N90 = cms.int32( -2 ), - min_N90hits = cms.int32( 2 ), - min_EMF = cms.double( 1.0E-6 ), - jetsInput = cms.InputTag( "hltAK4CaloJets" ), - JetIDParams = cms.PSet( - useRecHits = cms.bool( True ), - hbheRecHitsColl = cms.InputTag( "hltHbhereco" ), - hoRecHitsColl = cms.InputTag( "hltHoreco" ), - hfRecHitsColl = cms.InputTag( "hltHfreco" ), - ebRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), - eeRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) - ), - max_EMF = cms.double( 999.0 ) -) -hltFixedGridRhoFastjetAllCalo = cms.EDProducer( "FixedGridRhoProducerFastjet", +hltFixedGridRhoFastjetAll = cms.EDProducer( "FixedGridRhoProducerFastjet", gridSpacing = cms.double( 0.55 ), maxRapidity = cms.double( 5.0 ), - pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) + pfCandidatesTag = cms.InputTag( "hltParticleFlow" ) ) -hltAK4CaloJetsCorrected = cms.EDProducer( "CaloJetCorrectionProducer", - src = cms.InputTag( "hltAK4CaloJets" ), - correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +hltAK4PFJetsCorrected = cms.EDProducer( "PFJetCorrectionProducer", + src = cms.InputTag( "hltAK4PFJets" ), + correctors = cms.vstring( 'hltESPAK4PFCorrection' ) ) -hltAK4CaloJetsCorrectedIDPassed = cms.EDProducer( "CaloJetCorrectionProducer", - src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), - correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +hltPFJetsCorrectedMatchedToCaloJets200 = cms.EDProducer( "PFJetsMatchedToFilteredCaloJetsProducer", + DeltaR = cms.double( 0.5 ), + CaloJetFilter = cms.InputTag( "hltSingleCaloJet200" ), + TriggerType = cms.int32( 85 ), + PFJetSrc = cms.InputTag( "hltAK4PFJetsCorrected" ) +) +hltSinglePFJet260 = cms.EDFilter( "HLT1PFJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltPFJetsCorrectedMatchedToCaloJets200" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) ) hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", saveTags = cms.bool( True ), @@ -4884,6 +8332,15 @@ HLTDoLocalHcalWithTowerSequence = cms.Sequence( hltHcalDigis + hltHbhereco + hltHfreco + hltHoreco + hltTowerMakerForAll ) HLTFastJetForEgamma = cms.Sequence( hltFixedGridRhoFastjetAllCaloForMuons ) HLTPFHcalClusteringForEgamma = cms.Sequence( hltRegionalTowerForEgamma + hltParticleFlowRecHitHCALForEgamma + hltParticleFlowClusterHCALForEgamma ) +HLTGsfElectronSequence = cms.Sequence( hltEgammaCkfTrackCandidatesForGSF + hltEgammaGsfTracks + hltEgammaGsfElectrons + hltEgammaGsfTrackVars ) +HLTRecoPixelVertexingForElectronSequence = cms.Sequence( hltPixelLayerTriplets + hltPixelTracksElectrons + hltPixelVerticesElectrons ) +HLTPixelTrackingForElectron = cms.Sequence( hltElectronsVertex + HLTDoLocalPixelSequence + HLTRecoPixelVertexingForElectronSequence ) +HLTIterativeTrackingForElectronsIteration0 = cms.Sequence( hltIter0ElectronsPixelSeedsFromPixelTracks + hltIter0ElectronsCkfTrackCandidates + hltIter0ElectronsCtfWithMaterialTracks + hltIter0ElectronsTrackSelectionHighPurity ) +HLTIterativeTrackingForElectronsIteration1 = cms.Sequence( hltIter1ElectronsClustersRefRemoval + hltIter1ElectronsMaskedMeasurementTrackerEvent + hltIter1ElectronsPixelLayerTriplets + hltIter1ElectronsPixelSeeds + hltIter1ElectronsCkfTrackCandidates + hltIter1ElectronsCtfWithMaterialTracks + hltIter1ElectronsTrackSelectionHighPurityLoose + hltIter1ElectronsTrackSelectionHighPurityTight + hltIter1ElectronsTrackSelectionHighPurity ) +HLTIterativeTrackingForElectronsIteration2 = cms.Sequence( hltIter2ElectronsClustersRefRemoval + hltIter2ElectronsMaskedMeasurementTrackerEvent + hltIter2ElectronsPixelLayerPairs + hltIter2ElectronsPixelSeeds + hltIter2ElectronsCkfTrackCandidates + hltIter2ElectronsCtfWithMaterialTracks + hltIter2ElectronsTrackSelectionHighPurity ) +HLTIterativeTrackingForElectronIter02 = cms.Sequence( HLTIterativeTrackingForElectronsIteration0 + HLTIterativeTrackingForElectronsIteration1 + hltIter1MergedForElectrons + HLTIterativeTrackingForElectronsIteration2 + hltIter2MergedForElectrons ) +HLTTrackReconstructionForIsoElectronIter02 = cms.Sequence( HLTPixelTrackingForElectron + HLTDoLocalStripSequence + HLTIterativeTrackingForElectronIter02 ) +HLTEle27WP80GsfSequence = cms.Sequence( HLTDoFullUnpackingEgammaEcalSequence + HLTPFClusteringForEgamma + hltEgammaCandidates + hltEGL1SingleEG20ORL1SingleEG22Filter + hltEG27EtFilter + hltEgammaClusterShape + hltEle27WP80ClusterShapeFilter + HLTDoLocalHcalWithTowerSequence + HLTFastJetForEgamma + hltEgammaHoverE + hltEle27WP80HEFilter + hltEgammaEcalPFClusterIso + hltEle27WP80EcalIsoFilter + HLTPFHcalClusteringForEgamma + hltEgammaHcalPFClusterIso + hltEle27WP80HcalIsoFilter + HLTDoLocalPixelSequence + HLTDoLocalStripSequence + hltMixedLayerPairs + hltEgammaElectronPixelSeeds + hltEle27WP80PixelMatchFilter + HLTGsfElectronSequence + hltEle27WP80GsfOneOEMinusOneOPFilter + hltEle27WP80GsfDetaFilter + hltEle27WP80GsfDphiFilter + HLTTrackReconstructionForIsoElectronIter02 + hltEgammaEleGsfTrackIso + hltEle27WP80GsfTrackIsoFilter ) HLTRecoPixelVertexingForPhotonsSequence = cms.Sequence( hltPixelLayerTriplets + hltPixelTracks + hltPixelVerticesForPhotons ) HLTIterativeTrackingForPhotonsIteration0 = cms.Sequence( hltIter0PFlowPixelSeedsFromPixelTracksForPhotons + hltIter0PFlowCkfTrackCandidatesForPhotons + hltIter0PFlowCtfWithMaterialTracksForPhotons + hltIter0PFlowTrackSelectionHighPurityForPhotons ) HLTIterativeTrackingForPhotonsIteration1 = cms.Sequence( hltIter1ClustersRefRemovalForPhotons + hltIter1MaskedMeasurementTrackerEventForPhotons + hltIter1PixelLayerTripletsForPhotons + hltIter1PFlowPixelSeedsForPhotons + hltIter1PFlowCkfTrackCandidatesForPhotons + hltIter1PFlowCtfWithMaterialTracksForPhotons + hltIter1PFlowTrackSelectionHighPurityLooseForPhotons + hltIter1PFlowTrackSelectionHighPurityTightForPhotons + hltIter1PFlowTrackSelectionHighPurityForPhotons ) @@ -4897,17 +8354,39 @@ HLTAK4CaloJetsReconstructionSequence = cms.Sequence( HLTDoCaloSequence + hltAK4CaloJets + hltAK4CaloJetsIDPassed ) HLTAK4CaloJetsCorrectionSequence = cms.Sequence( hltFixedGridRhoFastjetAllCalo + hltAK4CaloJetsCorrected + hltAK4CaloJetsCorrectedIDPassed ) HLTAK4CaloJetsSequence = cms.Sequence( HLTAK4CaloJetsReconstructionSequence + HLTAK4CaloJetsCorrectionSequence ) +HLTDoCaloSequencePF = cms.Sequence( HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + HLTDoLocalHcalSequence + hltTowerMakerForPF ) +HLTAK4CaloJetsPrePFRecoSequence = cms.Sequence( HLTDoCaloSequencePF + hltAK4CaloJetsPF ) +HLTPreAK4PFJetsRecoSequence = cms.Sequence( HLTAK4CaloJetsPrePFRecoSequence + hltAK4CaloJetsPFEt5 ) +HLTRecopixelvertexingSequence = cms.Sequence( hltPixelLayerTriplets + hltPixelTracks + hltPixelVertices ) +HLTIterativeTrackingIteration0 = cms.Sequence( hltIter0PFLowPixelSeedsFromPixelTracks + hltIter0PFlowCkfTrackCandidates + hltIter0PFlowCtfWithMaterialTracks + hltIter0PFlowTrackSelectionHighPurity ) +HLTIter0TrackAndTauJet4Iter1Sequence = cms.Sequence( hltTrackIter0RefsForJets4Iter1 + hltAK4Iter0TrackJets4Iter1 + hltIter0TrackAndTauJets4Iter1 ) +HLTIterativeTrackingIteration1 = cms.Sequence( hltIter1ClustersRefRemoval + hltIter1MaskedMeasurementTrackerEvent + hltIter1PixelLayerTriplets + hltIter1PFlowPixelSeeds + hltIter1PFlowCkfTrackCandidates + hltIter1PFlowCtfWithMaterialTracks + hltIter1PFlowTrackSelectionHighPurityLoose + hltIter1PFlowTrackSelectionHighPurityTight + hltIter1PFlowTrackSelectionHighPurity ) +HLTIter1TrackAndTauJets4Iter2Sequence = cms.Sequence( hltIter1TrackRefsForJets4Iter2 + hltAK4Iter1TrackJets4Iter2 + hltIter1TrackAndTauJets4Iter2 ) +HLTIterativeTrackingIteration2 = cms.Sequence( hltIter2ClustersRefRemoval + hltIter2MaskedMeasurementTrackerEvent + hltIter2PixelLayerPairs + hltIter2PFlowPixelSeeds + hltIter2PFlowCkfTrackCandidates + hltIter2PFlowCtfWithMaterialTracks + hltIter2PFlowTrackSelectionHighPurity ) +HLTIter2TrackAndTauJets4Iter3Sequence = cms.Sequence( hltIter2TrackRefsForJets4Iter3 + hltAK4Iter2TrackJets4Iter3 + hltIter2TrackAndTauJets4Iter3 ) +HLTIterativeTrackingIteration3 = cms.Sequence( hltIter3ClustersRefRemoval + hltIter3MaskedMeasurementTrackerEvent + hltIter3LayerTriplets + hltIter3PFlowMixedSeeds + hltIter3PFlowCkfTrackCandidates + hltIter3PFlowCtfWithMaterialTracks + hltIter3PFlowTrackSelectionHighPurityLoose + hltIter3PFlowTrackSelectionHighPurityTight + hltIter3PFlowTrackSelectionHighPurity ) +HLTIter3TrackAndTauJets4Iter4Sequence = cms.Sequence( hltIter3TrackRefsForJets4Iter4 + hltAK4Iter3TrackJets4Iter4 + hltIter3TrackAndTauJets4Iter4 ) +HLTIterativeTrackingIteration4 = cms.Sequence( hltIter4ClustersRefRemoval + hltIter4MaskedMeasurementTrackerEvent + hltIter4PixelLessLayerTriplets + hltIter4PFlowPixelLessSeeds + hltIter4PFlowCkfTrackCandidates + hltIter4PFlowCtfWithMaterialTracks + hltIter4PFlowTrackSelectionHighPurity ) +HLTIterativeTrackingIter04 = cms.Sequence( HLTIterativeTrackingIteration0 + HLTIter0TrackAndTauJet4Iter1Sequence + HLTIterativeTrackingIteration1 + hltIter1Merged + HLTIter1TrackAndTauJets4Iter2Sequence + HLTIterativeTrackingIteration2 + hltIter2Merged + HLTIter2TrackAndTauJets4Iter3Sequence + HLTIterativeTrackingIteration3 + hltIter3Merged + HLTIter3TrackAndTauJets4Iter4Sequence + HLTIterativeTrackingIteration4 + hltIter4Merged ) +HLTTrackReconstructionForPF = cms.Sequence( HLTDoLocalPixelSequence + HLTRecopixelvertexingSequence + HLTDoLocalStripSequence + HLTIterativeTrackingIter04 + hltPFMuonMerging + hltMuonLinks + hltMuons ) +HLTPreshowerSequence = cms.Sequence( hltEcalPreshowerDigis + hltEcalPreshowerRecHit ) +HLTParticleFlowSequence = cms.Sequence( HLTPreshowerSequence + hltParticleFlowRecHitECALUnseeded + hltParticleFlowRecHitHCAL + hltParticleFlowRecHitPSUnseeded + hltParticleFlowClusterECALUncorrectedUnseeded + hltParticleFlowClusterPSUnseeded + hltParticleFlowClusterECALUnseeded + hltParticleFlowClusterHCAL + hltParticleFlowClusterHFEM + hltParticleFlowClusterHFHAD + hltLightPFTracks + hltParticleFlowBlock + hltParticleFlow ) +HLTAK4PFJetsReconstructionSequence = cms.Sequence( HLTL2muonrecoSequence + HLTL3muonrecoSequence + HLTTrackReconstructionForPF + HLTParticleFlowSequence + hltAK4PFJets ) +HLTAK4PFJetsCorrectionSequence = cms.Sequence( hltFixedGridRhoFastjetAll + hltAK4PFJetsCorrected ) +HLTAK4PFJetsSequence = cms.Sequence( HLTPreAK4PFJetsRecoSequence + HLTAK4PFJetsReconstructionSequence + HLTAK4PFJetsCorrectionSequence ) HLTriggerFirstPath = cms.Path( hltGetConditions + hltGetRaw + hltBoolFalse ) HLT_Mu40_v1 = cms.Path( HLTBeginSequence + hltL1sMu16 + hltPreMu40 + hltL1fL1sMu16L1Filtered0 + HLTL2muonrecoSequence + hltL2fL1sMu16L1f0L2Filtered16Q + HLTL3muonrecoSequence + hltL3fL1sMu16L1f0L2f16QL3Filtered40Q + HLTEndSequence ) +HLT_Ele27_WP80_Gsf_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG20ORL1SingleEG22 + hltPreEle27WP80Gsf + HLTEle27WP80GsfSequence + HLTEndSequence ) HLT_Photon20_CaloIdVL_IsoL_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleEG12 + hltPrePhoton20CaloIdVLIsoL + HLTPhoton20CaloIdVLIsoLSequence + HLTEndSequence ) +HLT_PFJet260_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleJet128 + hltPrePFJet260 + HLTAK4CaloJetsSequence + hltSingleCaloJet200 + HLTAK4PFJetsSequence + hltPFJetsCorrectedMatchedToCaloJets200 + hltSinglePFJet260 + HLTEndSequence ) HLT_CaloJet260_v1 = cms.Path( HLTBeginSequence + hltL1sL1SingleJet128 + hltPreCaloJet260 + HLTAK4CaloJetsSequence + hltSingleCaloJet260 + HLTEndSequence ) HLT_Physics_v1 = cms.Path( HLTBeginSequence + hltPrePhysics + HLTEndSequence ) HLTriggerFinalPath = cms.Path( hltGtDigis + hltScalersRawToDigi + hltFEDSelector + hltTriggerSummaryAOD + hltTriggerSummaryRAW ) HLTAnalyzerEndpath = cms.EndPath( hltL1GtTrigReport + hltTrigReport ) -HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu40_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_CaloJet260_v1, HLT_Physics_v1, HLTriggerFinalPath, HLTAnalyzerEndpath )) +HLTSchedule = cms.Schedule( *(HLTriggerFirstPath, HLT_Mu40_v1, HLT_Ele27_WP80_Gsf_v1, HLT_Photon20_CaloIdVL_IsoL_v1, HLT_PFJet260_v1, HLT_CaloJet260_v1, HLT_Physics_v1, HLTriggerFinalPath, HLTAnalyzerEndpath )) # CMSSW version specific customizations import os diff --git a/HLTrigger/Configuration/python/HLTrigger_Datasets_GRun_cff.py b/HLTrigger/Configuration/python/HLTrigger_Datasets_GRun_cff.py index dacd02b40977b..53e29048dbf45 100644 --- a/HLTrigger/Configuration/python/HLTrigger_Datasets_GRun_cff.py +++ b/HLTrigger/Configuration/python/HLTrigger_Datasets_GRun_cff.py @@ -56,8 +56,28 @@ 'HLT_PFJet40_v1', 'HLT_PFMET180_NoiseCleaned_v1', 'HLT_PFchMET90_NoiseCleaned_v1', + 'HLT_Photon135_PFMET40_v1', + 'HLT_Photon135_VBF_v1', + 'HLT_Photon150_PFMET40_v1', + 'HLT_Photon150_VBF_v1', + 'HLT_Photon160_PFMET40_v1', + 'HLT_Photon160_VBF_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon250_NoHE_PFMET40_v1', + 'HLT_Photon250_NoHE_VBF_v1', 'HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1', + 'HLT_Photon300_NoHE_PFMET40_v1', + 'HLT_Photon300_NoHE_VBF_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1', 'HLT_Physics_v1', 'HLT_ReducedIterativeTracking_v1') diff --git a/HLTrigger/Configuration/python/HLTrigger_Datasets_HIon_cff.py b/HLTrigger/Configuration/python/HLTrigger_Datasets_HIon_cff.py index 2b6a526e2b697..b1b2ce65f8e3b 100644 --- a/HLTrigger/Configuration/python/HLTrigger_Datasets_HIon_cff.py +++ b/HLTrigger/Configuration/python/HLTrigger_Datasets_HIon_cff.py @@ -10,5 +10,9 @@ streamA_datasetInitialPD_selector.l1tResults = cms.InputTag('') streamA_datasetInitialPD_selector.throw = cms.bool(False) streamA_datasetInitialPD_selector.triggerConditions = cms.vstring('HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', + 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', + 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1') diff --git a/HLTrigger/Configuration/python/HLTrigger_Datasets_PIon_cff.py b/HLTrigger/Configuration/python/HLTrigger_Datasets_PIon_cff.py index e75d7e8138a56..b1b2ce65f8e3b 100644 --- a/HLTrigger/Configuration/python/HLTrigger_Datasets_PIon_cff.py +++ b/HLTrigger/Configuration/python/HLTrigger_Datasets_PIon_cff.py @@ -10,7 +10,9 @@ streamA_datasetInitialPD_selector.l1tResults = cms.InputTag('') streamA_datasetInitialPD_selector.throw = cms.bool(False) streamA_datasetInitialPD_selector.triggerConditions = cms.vstring('HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1') diff --git a/HLTrigger/Configuration/python/Tools/confdb.py b/HLTrigger/Configuration/python/Tools/confdb.py index 550aa9a4e84e0..4ce5c493517fd 100755 --- a/HLTrigger/Configuration/python/Tools/confdb.py +++ b/HLTrigger/Configuration/python/Tools/confdb.py @@ -199,18 +199,18 @@ def customize(self): self.build_source() # manual override some parameters - if self.config.type in ('GRun','FULL'): - self.data += """ -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in %(dict)s: - %(process)shltHfreco.setNoiseFlags = cms.bool( True ) -""" - if self.config.type in ('HIon', ): - self.data += """ -# Disable HF Noise filters in HIon menu -if 'hltHfreco' in %(dict)s: - %(process)shltHfreco.setNoiseFlags = cms.bool( False ) -""" +# if self.config.type in ('HIon', ): +# self.data += """ +## Disable HF Noise filters in HIon menu +#if 'hltHfreco' in %(dict)s: +# %(process)shltHfreco.setNoiseFlags = cms.bool( False ) +#""" +# else: +# self.data += """ +## Enable HF Noise filters in non-HIon menu +#if 'hltHfreco' in %(dict)s: +# %(process)shltHfreco.setNoiseFlags = cms.bool( True ) +#""" # self.data += """ ## untracked parameters with NO default in the code diff --git a/HLTrigger/Configuration/tables/GRun.txt b/HLTrigger/Configuration/tables/GRun.txt index 1382700e15bc9..96e421e307c69 100644 --- a/HLTrigger/Configuration/tables/GRun.txt +++ b/HLTrigger/Configuration/tables/GRun.txt @@ -31,10 +31,10 @@ HLT_LooseIsoPFTau40_Trk25_Prong1_eta2p1_PFMET65_v* # JIRA: CMSHLT-73 HLT_PFJet40_v* # JIRA: CMSHLT-67 HLT_PFJet260_v* # JIRA: CMSHLT-67 -HLT_PFNoPUJet260_v* # JIRA: CMSHLT-67 +#HLT_PFNoPUJet260_v* # JIRA: CMSHLT-67 removal of PFNoPU CMSHLT-90 HLT_CaloJet260_v* # JIRA: CMSHLT-67 HLT_HT650_v* # JIRA: CMSHLT-67 -HLT_PFNoPUHT650_v* # JIRA: CMSHLT-67 +#HLT_PFNoPUHT650_v* # JIRA: CMSHLT-67 removal of PFNoPU CMSHLT-90 HLT_PFHT650_v* # JIRA: CMSHLT-67 HLT_IterativeTracking_v* # JIRA: CMSHLT-68 @@ -65,26 +65,26 @@ HLT_DoubleMu4_LowMassNonResonantTrk_Displaced_v* # JIRA: CMSHLT-82 #HLT_Photon36_R9Id85_OR_CaloId24b40e_Iso50T80L_Photon18_AND_HE10_R9Id65_Mass95_v* # JIRA: CMSHLT-81, no DQM yet #HLT_Photon42_R9Id85_OR_CaloId24b40e_Iso50T80L_Photon22_AND_HE10_R9Id65_v* # JIRA: CMSHLT-81, no DQM yet -#HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon135_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon150_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon160_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon250_NoHE_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon300_NoHE_PFMET40_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon135_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon150_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon160_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon250_NoHE_VBF_v* # JIRA: CMSHLT-83, no DQM yet -#HLT_Photon300_NoHE_VBF_v* # JIRA: CMSHLT-83, no DQM yet +HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon135_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon150_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon160_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon250_NoHE_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon300_NoHE_PFMET40_v* # JIRA: CMSHLT-83 +HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon135_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon150_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon160_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon250_NoHE_VBF_v* # JIRA: CMSHLT-83 +HLT_Photon300_NoHE_VBF_v* # JIRA: CMSHLT-83 HLT_Mu30_TkMu11_v* # JIRA: CMSHLT-84 diff --git a/HLTrigger/Configuration/tables/HIon.txt b/HLTrigger/Configuration/tables/HIon.txt index bd2a9e7dea9b9..c72eeeaa8da93 100644 --- a/HLTrigger/Configuration/tables/HIon.txt +++ b/HLTrigger/Configuration/tables/HIon.txt @@ -1,24 +1,15 @@ -# "HIon" menu +# "HIon" menu (placeholder) -HLT_CaloJet260_v* # JIRA: CMSHLT-67 - -HLT_Physics_v* # skim +HLT_CaloJet260_v* +HLT_PFJet260_v* +HLT_Photon20_CaloIdVL_IsoL_v* +HLT_Ele27_WP80_Gsf_v* +HLT_Mu40_v* +HLT_Physics_v* HLTriggerFirstPath HLTriggerFinalPath HLTAnalyzerEndpath -AOutput -#AForHIOutput -#ALCAP0Output -#ALCAPHISYMOutput -#ALCALUMIPIXELSOutput -#CalibrationOutput -DQMOutput # online DQMFileSaver -#EcalCalibrationOutput -#ExpressForHIOutput -#HLTDQMOutput -#HLTDQMResultsOutput # Removed from the master since /dev/CMSSW_5_2_1/HLT/V435 -#HLTMONOutput -#NanoDSTOutput -#RPCMONOutput +AOutput +DQMOutput diff --git a/HLTrigger/Configuration/tables/PIon.txt b/HLTrigger/Configuration/tables/PIon.txt index f7de35a35f13a..370e996277b87 100644 --- a/HLTrigger/Configuration/tables/PIon.txt +++ b/HLTrigger/Configuration/tables/PIon.txt @@ -1,30 +1,15 @@ -# "PIon" menu +# "PIon" menu (placeholder) -HLT_CaloJet260_v* # JIRA: CMSHLT-67 +HLT_CaloJet260_v* +HLT_PFJet260_v* +HLT_Photon20_CaloIdVL_IsoL_v* +HLT_Ele27_WP80_Gsf_v* +HLT_Mu40_v* +HLT_Physics_v* -HLT_Mu40_v* # JIRA: CMSHLT-64 - -HLT_Photon20_CaloIdVL_IsoL_v* # JIRA: CMSHLT-63 - -HLT_Physics_v* # skim - -#DQM_FEDIntegrity_v* # sr 131577 -#HLT_LogMonitor_v* # sr 131577 HLTriggerFirstPath -HLTriggerFinalPath # sr 131577 -HLTAnalyzerEndpath # only in 'PIon', not in 'online' -AOutput # sr 131577 -#BOutput # sr 131577, removed by sr #135006 -#ALCAP0Output # sr 131577 -#ALCAPHISYMOutput # sr 131577 -#ALCALUMIPIXELSOutput # sr 131577 -#CalibrationOutput # sr 131577 -DQMOutput # online DQMFileSaver -#EcalCalibrationOutput # sr 131577 -#ExpressOutput # sr 131577 -#HLTDQMOutput # sr 131577 -#HLTMONOutput # sr 131577, removed by sr #134906 -#NanoDSTOutput # sr 131577 -#PhysicsDSTOutput # sr 131577, removed by sr #135006 -#RPCMONOutput # sr 131577 -#TrackerCalibrationOutput # sr 131577 +HLTriggerFinalPath +HLTAnalyzerEndpath + +AOutput +DQMOutput diff --git a/HLTrigger/Configuration/test/OnData_HLT_2014.py b/HLTrigger/Configuration/test/OnData_HLT_2014.py index 7cff58f069531..684efc52a3289 100644 --- a/HLTrigger/Configuration/test/OnData_HLT_2014.py +++ b/HLTrigger/Configuration/test/OnData_HLT_2014.py @@ -54921,10 +54921,6 @@ ) ) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in process.__dict__: - process.hltHfreco.setNoiseFlags = cms.bool( True ) - # CMSSW version specific customizations import os cmsswVersion = os.environ['CMSSW_VERSION'] diff --git a/HLTrigger/Configuration/test/OnData_HLT_FULL.py b/HLTrigger/Configuration/test/OnData_HLT_FULL.py index 3f282c9907703..2151439986349 100644 --- a/HLTrigger/Configuration/test/OnData_HLT_FULL.py +++ b/HLTrigger/Configuration/test/OnData_HLT_FULL.py @@ -27150,10 +27150,6 @@ ) ) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in process.__dict__: - process.hltHfreco.setNoiseFlags = cms.bool( True ) - # CMSSW version specific customizations import os cmsswVersion = os.environ['CMSSW_VERSION'] @@ -27208,7 +27204,7 @@ # override the GlobalTag, connection string and pfnPrefix if 'GlobalTag' in process.__dict__: from Configuration.AlCa.GlobalTag_condDBv2 import GlobalTag as customiseGlobalTag - process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:hltonline', conditions = 'L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') + process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:hltonline_GRun', conditions = 'L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') process.GlobalTag.connect = 'frontier://FrontierProd/CMS_CONDITIONS' process.GlobalTag.pfnPrefix = cms.untracked.string('frontier://FrontierProd/') for pset in process.GlobalTag.toGet.value(): diff --git a/HLTrigger/Configuration/test/OnData_HLT_GRun.py b/HLTrigger/Configuration/test/OnData_HLT_GRun.py index 8cdaf58fa37a6..e639effa3c6b1 100644 --- a/HLTrigger/Configuration/test/OnData_HLT_GRun.py +++ b/HLTrigger/Configuration/test/OnData_HLT_GRun.py @@ -1,11 +1,11 @@ -# /dev/CMSSW_7_1_1/GRun/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/GRun/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms process = cms.Process( "HLTGRun" ) process.HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/GRun/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/GRun/V87') ) process.HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -499,8 +499,28 @@ 'HLT_PFJet40_v1', 'HLT_PFMET180_NoiseCleaned_v1', 'HLT_PFchMET90_NoiseCleaned_v1', + 'HLT_Photon135_PFMET40_v1', + 'HLT_Photon135_VBF_v1', + 'HLT_Photon150_PFMET40_v1', + 'HLT_Photon150_VBF_v1', + 'HLT_Photon160_PFMET40_v1', + 'HLT_Photon160_VBF_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon250_NoHE_PFMET40_v1', + 'HLT_Photon250_NoHE_VBF_v1', 'HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1', + 'HLT_Photon300_NoHE_PFMET40_v1', + 'HLT_Photon300_NoHE_VBF_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1', 'HLT_Physics_v1', 'HLT_ReducedIterativeTracking_v1' ) ) @@ -24495,6 +24515,1078 @@ candTag = cms.InputTag( "hltMu8Ele23GsfDphiLegEle23GsfCaloIdTrackIdIsoMediumWPFilter" ), nonIsoTag = cms.InputTag( "" ) ) +process.hltPrePhoton22R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltHybridSuperClustersL1Seeded = cms.EDProducer( "EgammaHLTHybridClusterProducer", + xi = cms.double( 0.0 ), + regionEtaMargin = cms.double( 0.14 ), + regionPhiMargin = cms.double( 0.4 ), + severityRecHitThreshold = cms.double( 4.0 ), + RecHitFlagToBeExcluded = cms.vstring( ), + ecalhitcollection = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + eThreshA = cms.double( 0.003 ), + basicclusterCollection = cms.string( "" ), + eThreshB = cms.double( 0.1 ), + dynamicPhiRoad = cms.bool( False ), + useEtForXi = cms.bool( True ), + l1UpperThr = cms.double( 999.0 ), + excludeFlagged = cms.bool( True ), + posCalcParameters = cms.PSet( + T0_barl = cms.double( 7.4 ), + LogWeighted = cms.bool( True ), + T0_endc = cms.double( 3.1 ), + T0_endcPresh = cms.double( 1.2 ), + W0 = cms.double( 4.2 ), + X0 = cms.double( 0.89 ) + ), + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + eseed = cms.double( 0.35 ), + ethresh = cms.double( 0.1 ), + ewing = cms.double( 0.0 ), + RecHitSeverityToBeExcluded = cms.vstring( 'kWeird' ), + step = cms.int32( 17 ), + debugLevel = cms.string( "INFO" ), + dynamicEThresh = cms.bool( False ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ), + superclusterCollection = cms.string( "" ), + HybridBarrelSeedThr = cms.double( 1.5 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ) +) +process.hltCorrectedHybridSuperClustersL1Seeded = cms.EDProducer( "EgammaSCCorrectionMaker", + corectedSuperClusterCollection = cms.string( "" ), + sigmaElectronicNoise = cms.double( 0.03 ), + superClusterAlgo = cms.string( "Hybrid" ), + etThresh = cms.double( 1.0 ), + rawSuperClusterProducer = cms.InputTag( "hltHybridSuperClustersL1Seeded" ), + applyEnergyCorrection = cms.bool( True ), + isl_fCorrPset = cms.PSet( ), + VerbosityLevel = cms.string( "ERROR" ), + recHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + fix_fCorrPset = cms.PSet( ), + modeEE = cms.int32( 0 ), + modeEB = cms.int32( 0 ), + dyn_fCorrPset = cms.PSet( ), + energyCorrectorName = cms.string( "EcalClusterEnergyCorrectionObjectSpecific" ), + applyLocalContCorrection = cms.bool( False ), + localContCorrectorName = cms.string( "EcalBasicClusterLocalContCorrection" ), + crackCorrectorName = cms.string( "EcalClusterCrackCorrection" ), + applyCrackCorrection = cms.bool( False ), + hyb_fCorrPset = cms.PSet( + brLinearLowThr = cms.double( 1.1 ), + fBremVec = cms.vdouble( -0.05208, 0.1331, 0.9196, -5.735E-4, 1.343 ), + brLinearHighThr = cms.double( 8.0 ), + fEtEtaVec = cms.vdouble( 1.0012, -0.5714, 0.0, 0.0, 0.0, 0.5549, 12.74, 1.0448, 0.0, 0.0, 0.0, 0.0, 8.0, 1.023, -0.00181, 0.0, 0.0 ) + ) +) +process.hltMulti5x5BasicClustersL1Seeded = cms.EDProducer( "EgammaHLTMulti5x5ClusterProducer", + l1LowerThr = cms.double( 5.0 ), + Multi5x5BarrelSeedThr = cms.double( 0.5 ), + Multi5x5EndcapSeedThr = cms.double( 0.18 ), + endcapHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + barrelClusterCollection = cms.string( "notused" ), + regionEtaMargin = cms.double( 0.3 ), + regionPhiMargin = cms.double( 0.4 ), + RecHitFlagToBeExcluded = cms.vstring( ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + posCalcParameters = cms.PSet( + T0_barl = cms.double( 7.4 ), + LogWeighted = cms.bool( True ), + T0_endc = cms.double( 3.1 ), + T0_endcPresh = cms.double( 1.2 ), + W0 = cms.double( 4.2 ), + X0 = cms.double( 0.89 ) + ), + VerbosityLevel = cms.string( "ERROR" ), + doIsolated = cms.bool( True ), + barrelHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ), + doEndcaps = cms.bool( True ), + doBarrel = cms.bool( False ), + endcapClusterCollection = cms.string( "multi5x5EndcapBasicClusters" ), + l1UpperThr = cms.double( 999.0 ) +) +process.hltMulti5x5SuperClustersL1Seeded = cms.EDProducer( "Multi5x5SuperClusterProducer", + barrelSuperclusterCollection = cms.string( "multi5x5BarrelSuperClusters" ), + endcapEtaSearchRoad = cms.double( 0.14 ), + dynamicPhiRoad = cms.bool( False ), + endcapClusterTag = cms.InputTag( 'hltMulti5x5BasicClustersL1Seeded','multi5x5EndcapBasicClusters' ), + barrelPhiSearchRoad = cms.double( 0.8 ), + endcapPhiSearchRoad = cms.double( 0.6 ), + seedTransverseEnergyThreshold = cms.double( 1.0 ), + endcapSuperclusterCollection = cms.string( "multi5x5EndcapSuperClusters" ), + barrelEtaSearchRoad = cms.double( 0.06 ), + barrelClusterTag = cms.InputTag( 'hltMulti5x5BasicClustersL1Seeded','multi5x5BarrelBasicClusters' ), + doBarrel = cms.bool( False ), + doEndcaps = cms.bool( True ), + bremRecoveryPset = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( + a = cms.double( 47.85 ), + c = cms.double( 0.1201 ), + b = cms.double( 108.8 ) + ), + doEndcaps = cms.bool( True ), + doBarrel = cms.bool( False ) + ), + endcapClusterProducer = cms.string( "hltMulti5x5BasicClustersL1Seeded" ) +) +process.hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded = cms.EDProducer( "PreshowerClusterProducer", + assocSClusterCollection = cms.string( "" ), + preshStripEnergyCut = cms.double( 0.0 ), + preshClusterCollectionY = cms.string( "preshowerYClusters" ), + preshClusterCollectionX = cms.string( "preshowerXClusters" ), + etThresh = cms.double( 5.0 ), + preshRecHitProducer = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + endcapSClusterProducer = cms.InputTag( 'hltMulti5x5SuperClustersL1Seeded','multi5x5EndcapSuperClusters' ), + preshNclust = cms.int32( 4 ), + debugLevel = cms.string( "" ), + preshClusterEnergyCut = cms.double( 0.0 ), + preshSeededNstrip = cms.int32( 15 ) +) +process.hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded = cms.EDProducer( "EgammaSCCorrectionMaker", + corectedSuperClusterCollection = cms.string( "" ), + sigmaElectronicNoise = cms.double( 0.15 ), + superClusterAlgo = cms.string( "Multi5x5" ), + etThresh = cms.double( 1.0 ), + rawSuperClusterProducer = cms.InputTag( "hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded" ), + applyEnergyCorrection = cms.bool( True ), + isl_fCorrPset = cms.PSet( ), + VerbosityLevel = cms.string( "ERROR" ), + recHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + fix_fCorrPset = cms.PSet( + brLinearLowThr = cms.double( 0.6 ), + fBremVec = cms.vdouble( -0.04163, 0.08552, 0.95048, -0.002308, 1.077 ), + brLinearHighThr = cms.double( 6.0 ), + fEtEtaVec = cms.vdouble( 0.9746, -6.512, 0.0, 0.0, 0.02771, 4.983, 0.0, 0.0, -0.007288, -0.9446, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0 ) + ), + modeEE = cms.int32( 0 ), + modeEB = cms.int32( 0 ), + dyn_fCorrPset = cms.PSet( ), + energyCorrectorName = cms.string( "EcalClusterEnergyCorrectionObjectSpecific" ), + applyLocalContCorrection = cms.bool( False ), + localContCorrectorName = cms.string( "EcalBasicClusterLocalContCorrection" ), + crackCorrectorName = cms.string( "EcalClusterCrackCorrection" ), + applyCrackCorrection = cms.bool( False ), + hyb_fCorrPset = cms.PSet( ) +) +process.hltL1SeededRecoEcalCandidate = cms.EDProducer( "EgammaHLTRecoEcalCandidateProducers", + scIslandEndcapProducer = cms.InputTag( "hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded" ), + scHybridBarrelProducer = cms.InputTag( "hltCorrectedHybridSuperClustersL1Seeded" ), + recoEcalCandidateCollection = cms.string( "" ) +) +process.hltEGRegionalL1SingleEG22 = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG22" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 22.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltL1SeededPhotonHcalForHE = cms.EDProducer( "EgammaHLTHcalIsolationProducersRegional", + eMinHE = cms.double( 0.8 ), + hbheRecHitProducer = cms.InputTag( "hltHbhereco" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.14 ), + eMinHB = cms.double( 0.7 ), + innerCone = cms.double( 0.0 ), + etMinHE = cms.double( -1.0 ), + etMinHB = cms.double( -1.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( False ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1SeededR9ID = cms.EDProducer( "EgammaHLTR9IDProducer", + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + ecalRechitEB = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + ecalRechitEE = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1SeededPhotonEcalIso = cms.EDProducer( "EgammaHLTEcalRecIsolationProducer", + useNumCrystals = cms.bool( True ), + intRadiusEndcap = cms.double( 3.0 ), + etMinBarrel = cms.double( -9999.0 ), + effectiveAreaBarrel = cms.double( 0.101 ), + tryBoth = cms.bool( True ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + etMinEndcap = cms.double( 0.11 ), + eMinBarrel = cms.double( 0.095 ), + ecalEndcapRecHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + jurassicWidth = cms.double( 3.0 ), + intRadiusBarrel = cms.double( 3.0 ), + ecalBarrelRecHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + extRadius = cms.double( 0.3 ), + doRhoCorrection = cms.bool( False ), + useIsolEt = cms.bool( True ), + eMinEndcap = cms.double( -9999.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + subtract = cms.bool( False ), + rhoScale = cms.double( 1.0 ), + effectiveAreaEndcap = cms.double( 0.046 ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1SeededPhotonHcalIso = cms.EDProducer( "EgammaHLTHcalIsolationProducersRegional", + eMinHE = cms.double( 0.8 ), + hbheRecHitProducer = cms.InputTag( "hltHbhereco" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.29 ), + eMinHB = cms.double( 0.7 ), + innerCone = cms.double( 0.16 ), + etMinHE = cms.double( -1.0 ), + etMinHB = cms.double( -1.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( True ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1SeededEgammaRegionalPixelSeedGenerator = cms.EDProducer( "EgammaHLTRegionalPixelSeedGeneratorProducers", + deltaPhiRegion = cms.double( 0.3 ), + vertexZ = cms.double( 0.0 ), + originHalfLength = cms.double( 15.0 ), + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseZInVertex = cms.bool( False ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + SeedingLayers = cms.InputTag( "hltPixelLayerPairs" ) + ), + deltaEtaRegion = cms.double( 0.3 ), + ptMin = cms.double( 1.5 ), + candTagEle = cms.InputTag( "pixelMatchElectrons" ), + candTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + TTRHBuilder = cms.string( "WithTrackAngle" ), + originRadius = cms.double( 0.02 ) +) +process.hltL1SeededEgammaRegionalCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltL1SeededEgammaRegionalPixelSeedGenerator" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPCkfTrajectoryBuilder" ) +) +process.hltL1SeededEgammaRegionalCTFFinalFitWithMaterial = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL1SeededEgammaRegionalCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "hltEgammaRegionalCTFFinalFitWithMaterial" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( False ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +process.hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( True ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 100.0, 1.0 ), + applyAdaptedPVCuts = cms.bool( False ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 100.0, 1.0 ), + copyTrajectories = cms.untracked.bool( False ), + vtxNumber = cms.int32( 0 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( False ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( False ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltL1SeededEgammaRegionalCTFFinalFitWithMaterial" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "NONE" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 100.0, 1.0 ), + d0_par1 = cms.vdouble( 100.0, 1.0 ), + res_par = cms.vdouble( 1.0, 0.0 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltL1SeededPhotonHollowTrackIsoWithId = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPFMET40Filter = cms.EDFilter( "HLTMhtFilter", + saveTags = cms.bool( True ), + mhtLabels = cms.VInputTag( 'hltPFMETProducer' ), + minMht = cms.vdouble( 40.0 ) +) +process.hltPrePhoton36R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 36.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton50R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 50.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton75R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 75.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton90R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 90.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1sL1SingleEG30 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG30" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPrePhoton135PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEGRegionalL1SingleEG30 = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG30" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltEG135EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 135.0 ), + etcutEE = cms.double( 135.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton135HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG135EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton150PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEG150EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 150.0 ), + etcutEE = cms.double( 150.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton150HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG150EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton160PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEG160EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 160.0 ), + etcutEE = cms.double( 160.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton160HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG160EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton250NoHEPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEG250EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( True ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 250.0 ), + etcutEE = cms.double( 250.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPrePhoton300NoHEPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEG300EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( True ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 300.0 ), + etcutEE = cms.double( 300.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPrePhoton22R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltDiCaloJet20MJJ400AllJetsDEta3Filter = cms.EDFilter( "HLTCaloJetVBFFilter", + saveTags = cms.bool( True ), + minDeltaEta = cms.double( 3.0 ), + leadingJetOnly = cms.bool( False ), + maxEta = cms.double( 5.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrected" ), + etaOpposite = cms.bool( True ), + triggerType = cms.int32( 85 ), + minInvMass = cms.double( 400.0 ), + minPtHigh = cms.double( 20.0 ), + minPtLow = cms.double( 20.0 ) +) +process.hltPrePhoton36R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton50R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton75R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton90R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton135VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton150VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton160VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton250NoHEVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton300NoHEVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) process.hltPrePhysics = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) @@ -24598,8 +25690,28 @@ 'HLT_PFJet40_v1', 'HLT_PFMET180_NoiseCleaned_v1', 'HLT_PFchMET90_NoiseCleaned_v1', + 'HLT_Photon135_PFMET40_v1', + 'HLT_Photon135_VBF_v1', + 'HLT_Photon150_PFMET40_v1', + 'HLT_Photon150_VBF_v1', + 'HLT_Photon160_PFMET40_v1', + 'HLT_Photon160_VBF_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon250_NoHE_PFMET40_v1', + 'HLT_Photon250_NoHE_VBF_v1', 'HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1', + 'HLT_Photon300_NoHE_PFMET40_v1', + 'HLT_Photon300_NoHE_VBF_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1', 'HLT_Physics_v1', 'HLT_ReducedIterativeTracking_v1' ) ), outputCommands = cms.untracked.vstring( 'drop *', @@ -24770,6 +25882,21 @@ process.HLTEle17Ele12Ele10CaloIdTrackIdSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1EG12EG7EG5Filter + process.hltEle17Ele12Ele10CaloIdTrackIdEtLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdEtLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdEtLeg3Filter + process.hltEgammaClusterShape + process.hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg3Filter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltEle17Ele12Ele10CaloIdTrackIdHELeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdHELeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdHELeg3Filter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg3Filter + process.HLTGsfElectronSequence + process.hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg3Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDetaLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDetaLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDetaLeg3Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDphiLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDphiLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDphiLeg3Filter ) process.HLTMu23Ele12_Gsf = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1Mu12EG7Filter + process.hltMu23Ele12EtLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.hltEgammaClusterShape + process.hltMu23Ele12ClusterShapeLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltMu23Ele12HELegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.hltEgammaEcalPFClusterIso + process.hltMu23Ele12EcalIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltMu23Ele12HcalIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltMu23Ele12PixelMatchLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTGsfElectronSequence + process.hltMu23Ele12GsfDetaLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.hltMu23Ele12GsfDphiLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTTrackReconstructionForIsoElectronIter02 + process.hltEgammaEleGsfTrackIso + process.hltMu23Ele12GsfTrackIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter ) process.HLTMu8Ele23_Gsf = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1Mu3p5EG12ORL1MuOpenEG12Filter + process.hltMu8Ele23EtLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.hltEgammaClusterShape + process.hltMu8Ele23ClusterShapeLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltMu8Ele23HELegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.hltEgammaEcalPFClusterIso + process.hltMu8Ele23EcalIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltMu8Ele23HcalIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltMu8Ele23PixelMatchLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTGsfElectronSequence + process.hltMu8Ele23GsfDetaLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.hltMu8Ele23GsfDphiLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTTrackReconstructionForIsoElectronIter02 + process.hltEgammaEleGsfTrackIso + process.hltMu8Ele23GsfTrackIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter ) +process.HLTMulti5x5SuperClusterL1Seeded = cms.Sequence( process.hltMulti5x5BasicClustersL1Seeded + process.hltMulti5x5SuperClustersL1Seeded + process.hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded + process.hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded ) +process.HLTL1SeededEcalClustersSequence = cms.Sequence( process.hltHybridSuperClustersL1Seeded + process.hltCorrectedHybridSuperClustersL1Seeded + process.HLTMulti5x5SuperClusterL1Seeded ) +process.HLTDoLocalHcalWithoutHOSequence = cms.Sequence( process.hltHcalDigis + process.hltHbhereco + process.hltHfreco ) +process.HLTL1SeededEgammaRegionalRecoTrackerSequence = cms.Sequence( process.hltPixelLayerPairs + process.hltL1SeededEgammaRegionalPixelSeedGenerator + process.hltL1SeededEgammaRegionalCkfTrackCandidates + process.hltL1SeededEgammaRegionalCTFFinalFitWithMaterial ) +process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId = cms.Sequence( process.HLTL1SeededEgammaRegionalRecoTrackerSequence + process.hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity ) +process.HLTPhoton22R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton22R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTPhoton36R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton36R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTPhoton50R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton50R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTPhoton75R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton75R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTPhoton90R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton90R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTSinglePhoton135Sequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG135EtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton135HEFilter ) +process.HLTSinglePhoton150Sequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG150EtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton150HEFilter ) +process.HLTSinglePhoton160Sequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG160EtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton160HEFilter ) +process.HLTSinglePhoton250NoHESequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG250EtFilter ) +process.HLTSinglePhoton300NoHESequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG300EtFilter ) process.HLTriggerFirstPath = cms.Path( process.hltGetConditions + process.hltGetRaw + process.hltBoolFalse ) process.HLT_Mu17_NoFilters_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleMu12 + process.hltPreMu17NoFilters + process.hltL1fL1sMu12L1Filtered0 + process.HLTL2muonrecoSequence + process.hltL2fL1sMu12L2Filtered12 + process.HLTL3NoFiltersmuonrecoSequence + process.hltL3NoFiltersfL1sMu12L3Filtered17 + process.HLTEndSequence ) @@ -24822,6 +25949,26 @@ process.HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1EG12EG7EG5 + process.hltPreEle17Ele12Ele10CaloIdTrackId + process.HLTEle17Ele12Ele10CaloIdTrackIdSequence + process.HLTEndSequence ) process.HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1Mu12EG7 + process.hltPreMu23TrkIsoVVLEle12GsfCaloIdTrackIdIsoMediumWP + process.hltL1Mu12EG7L1MuFiltered0 + process.HLTL2muonrecoSequence + process.hltL1Mu12EG7L2MuFiltered0 + process.HLTL3muonrecoSequence + process.hltL1Mu12EG7L3MuFiltered23 + process.HLTL3muontrkisovvlSequence + process.hltL1Mu12EG7L3IsoMuFiltered23 + process.HLTMu23Ele12_Gsf + process.HLTEndSequence ) process.HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12 + process.hltPreMu8TrkIsoVVLEle23GsfCaloIdTrackIdIsoMediumWP + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12L1Filtered0 + process.HLTL2muonrecoSequence + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12L2Filtered5 + process.HLTL3muonrecoSequence + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12L3Filtered8 + process.HLTL3muontrkisovvlSequence + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12L3IsoFiltered8 + process.HLTMu8Ele23_Gsf + process.HLTEndSequence ) +process.HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton22R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton22R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton36R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton36R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton50R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton50R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton75R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton75R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton90R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton90R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon135_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton135PFMET40 + process.HLTSinglePhoton135Sequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon150_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton150PFMET40 + process.HLTSinglePhoton150Sequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon160_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton160PFMET40 + process.HLTSinglePhoton160Sequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon250_NoHE_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton250NoHEPFMET40 + process.HLTSinglePhoton250NoHESequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon300_NoHE_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton300NoHEPFMET40 + process.HLTSinglePhoton300NoHESequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton22R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton22R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton36R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton36R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton50R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton50R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton75R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton75R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton90R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton90R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon135_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton135VBF + process.HLTSinglePhoton135Sequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon150_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton150VBF + process.HLTSinglePhoton150Sequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon160_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton160VBF + process.HLTSinglePhoton160Sequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon250_NoHE_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton250NoHEVBF + process.HLTSinglePhoton250NoHESequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon300_NoHE_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton300NoHEVBF + process.HLTSinglePhoton300NoHESequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) process.HLT_Physics_v1 = cms.Path( process.HLTBeginSequence + process.hltPrePhysics + process.HLTEndSequence ) process.HLTriggerFinalPath = cms.Path( process.hltGtDigis + process.hltScalersRawToDigi + process.hltFEDSelector + process.hltTriggerSummaryAOD + process.hltTriggerSummaryRAW ) process.HLTAnalyzerEndpath = cms.EndPath( process.hltL1GtTrigReport + process.hltTrigReport ) @@ -24840,10 +25987,6 @@ ) ) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in process.__dict__: - process.hltHfreco.setNoiseFlags = cms.bool( True ) - # CMSSW version specific customizations import os cmsswVersion = os.environ['CMSSW_VERSION'] diff --git a/HLTrigger/Configuration/test/OnData_HLT_HIon.py b/HLTrigger/Configuration/test/OnData_HLT_HIon.py index 0e545afcfd066..5632102c42141 100644 --- a/HLTrigger/Configuration/test/OnData_HLT_HIon.py +++ b/HLTrigger/Configuration/test/OnData_HLT_HIon.py @@ -1,11 +1,11 @@ -# /dev/CMSSW_7_1_1/HIon/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/HIon/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms process = cms.Process( "HLTHIon" ) process.HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/HIon/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/HIon/V87') ) process.HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -453,6 +453,10 @@ ) process.streams = cms.PSet( A = cms.vstring( 'InitialPD' ) ) process.datasets = cms.PSet( InitialPD = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', + 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', + 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ) process.magfield = cms.ESSource( "XMLIdealGeometryESSource", @@ -2126,8 +2130,8 @@ setSigmaZ = cms.double( 0.0 ), maxRadius = cms.double( 2.0 ) ) -process.hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), +process.hltL1sMu16 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleMu16" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -2138,7 +2142,1550 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -process.hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", +process.hltPreMu40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltL1fL1sMu16L1Filtered0 = cms.EDFilter( "HLTMuonL1Filter", + saveTags = cms.bool( False ), + CSCTFtag = cms.InputTag( "unused" ), + PreviousCandTag = cms.InputTag( "hltL1sMu16" ), + MinPt = cms.double( 0.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 2.5 ), + SelectQualities = cms.vint32( ), + CandTag = cms.InputTag( "hltL1extraParticles" ), + ExcludeSingleSegmentCSC = cms.bool( False ) +) +process.hltMuonDTDigis = cms.EDProducer( "DTUnpackingModule", + useStandardFEDid = cms.bool( True ), + inputLabel = cms.InputTag( "rawDataCollector" ), + dataType = cms.string( "DDU" ), + fedbyType = cms.bool( False ), + readOutParameters = cms.PSet( + debug = cms.untracked.bool( False ), + rosParameters = cms.PSet( + writeSC = cms.untracked.bool( True ), + readingDDU = cms.untracked.bool( True ), + performDataIntegrityMonitor = cms.untracked.bool( False ), + readDDUIDfromDDU = cms.untracked.bool( True ), + debug = cms.untracked.bool( False ), + localDAQ = cms.untracked.bool( False ) + ), + localDAQ = cms.untracked.bool( False ), + performDataIntegrityMonitor = cms.untracked.bool( False ) + ), + dqmOnly = cms.bool( False ) +) +process.hltDt1DRecHits = cms.EDProducer( "DTRecHitProducer", + debug = cms.untracked.bool( False ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + dtDigiLabel = cms.InputTag( "hltMuonDTDigis" ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ) +) +process.hltDt4DSegments = cms.EDProducer( "DTRecSegment4DProducer", + debug = cms.untracked.bool( False ), + Reco4DAlgoName = cms.string( "DTCombinatorialPatternReco4D" ), + recHits2DLabel = cms.InputTag( "dt2DSegments" ), + recHits1DLabel = cms.InputTag( "hltDt1DRecHits" ), + Reco4DAlgoConfig = cms.PSet( + segmCleanerMode = cms.int32( 2 ), + Reco2DAlgoName = cms.string( "DTCombinatorialPatternReco" ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + nSharedHitsMax = cms.int32( 2 ), + hit_afterT0_resolution = cms.double( 0.03 ), + Reco2DAlgoConfig = cms.PSet( + segmCleanerMode = cms.int32( 2 ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + nSharedHitsMax = cms.int32( 2 ), + AlphaMaxPhi = cms.double( 1.0 ), + hit_afterT0_resolution = cms.double( 0.03 ), + MaxAllowedHits = cms.uint32( 50 ), + performT0_vdriftSegCorrection = cms.bool( False ), + AlphaMaxTheta = cms.double( 0.9 ), + debug = cms.untracked.bool( False ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ), + nUnSharedHitsMin = cms.int32( 2 ), + performT0SegCorrection = cms.bool( False ), + perform_delta_rejecting = cms.bool( False ) + ), + performT0_vdriftSegCorrection = cms.bool( False ), + debug = cms.untracked.bool( False ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ), + nUnSharedHitsMin = cms.int32( 2 ), + AllDTRecHits = cms.bool( True ), + performT0SegCorrection = cms.bool( False ), + perform_delta_rejecting = cms.bool( False ) + ) +) +process.hltMuonCSCDigis = cms.EDProducer( "CSCDCCUnpacker", + PrintEventNumber = cms.untracked.bool( False ), + UseSelectiveUnpacking = cms.bool( True ), + UseExaminer = cms.bool( True ), + ErrorMask = cms.uint32( 0x0 ), + InputObjects = cms.InputTag( "rawDataCollector" ), + UseFormatStatus = cms.bool( True ), + ExaminerMask = cms.uint32( 0x1febf3f6 ), + UnpackStatusDigis = cms.bool( False ), + VisualFEDInspect = cms.untracked.bool( False ), + FormatedEventDump = cms.untracked.bool( False ), + Debug = cms.untracked.bool( False ), + VisualFEDShort = cms.untracked.bool( False ) +) +process.hltCsc2DRecHits = cms.EDProducer( "CSCRecHitDProducer", + XTasymmetry_ME1b = cms.double( 0.0 ), + XTasymmetry_ME1a = cms.double( 0.0 ), + ConstSyst_ME1a = cms.double( 0.022 ), + ConstSyst_ME1b = cms.double( 0.007 ), + XTasymmetry_ME41 = cms.double( 0.0 ), + CSCStripxtalksOffset = cms.double( 0.03 ), + CSCUseCalibrations = cms.bool( True ), + CSCUseTimingCorrections = cms.bool( True ), + CSCNoOfTimeBinsForDynamicPedestal = cms.int32( 2 ), + XTasymmetry_ME22 = cms.double( 0.0 ), + UseFivePoleFit = cms.bool( True ), + XTasymmetry_ME21 = cms.double( 0.0 ), + ConstSyst_ME21 = cms.double( 0.0 ), + CSCDebug = cms.untracked.bool( False ), + ConstSyst_ME22 = cms.double( 0.0 ), + CSCUseGasGainCorrections = cms.bool( False ), + XTasymmetry_ME31 = cms.double( 0.0 ), + readBadChambers = cms.bool( True ), + NoiseLevel_ME13 = cms.double( 8.0 ), + NoiseLevel_ME12 = cms.double( 9.0 ), + NoiseLevel_ME32 = cms.double( 9.0 ), + NoiseLevel_ME31 = cms.double( 9.0 ), + XTasymmetry_ME32 = cms.double( 0.0 ), + ConstSyst_ME41 = cms.double( 0.0 ), + CSCStripClusterSize = cms.untracked.int32( 3 ), + CSCStripClusterChargeCut = cms.double( 25.0 ), + CSCStripPeakThreshold = cms.double( 10.0 ), + readBadChannels = cms.bool( True ), + UseParabolaFit = cms.bool( False ), + XTasymmetry_ME13 = cms.double( 0.0 ), + XTasymmetry_ME12 = cms.double( 0.0 ), + wireDigiTag = cms.InputTag( 'hltMuonCSCDigis','MuonCSCWireDigi' ), + ConstSyst_ME12 = cms.double( 0.0 ), + ConstSyst_ME13 = cms.double( 0.0 ), + ConstSyst_ME32 = cms.double( 0.0 ), + ConstSyst_ME31 = cms.double( 0.0 ), + UseAverageTime = cms.bool( False ), + NoiseLevel_ME1a = cms.double( 7.0 ), + NoiseLevel_ME1b = cms.double( 8.0 ), + CSCWireClusterDeltaT = cms.int32( 1 ), + CSCUseStaticPedestals = cms.bool( False ), + stripDigiTag = cms.InputTag( 'hltMuonCSCDigis','MuonCSCStripDigi' ), + CSCstripWireDeltaTime = cms.int32( 8 ), + NoiseLevel_ME21 = cms.double( 9.0 ), + NoiseLevel_ME22 = cms.double( 9.0 ), + NoiseLevel_ME41 = cms.double( 9.0 ) +) +process.hltCscSegments = cms.EDProducer( "CSCSegmentProducer", + inputObjects = cms.InputTag( "hltCsc2DRecHits" ), + algo_psets = cms.VPSet( + cms.PSet( chamber_types = cms.vstring( 'ME1/a', + 'ME1/b', + 'ME1/2', + 'ME1/3', + 'ME2/1', + 'ME2/2', + 'ME3/1', + 'ME3/2', + 'ME4/1', + 'ME4/2' ), + algo_name = cms.string( "CSCSegAlgoST" ), + parameters_per_chamber_type = cms.vint32( 2, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), + algo_psets = cms.VPSet( + cms.PSet( maxRatioResidualPrune = cms.double( 3.0 ), + yweightPenalty = cms.double( 1.5 ), + maxRecHitsInCluster = cms.int32( 20 ), + dPhiFineMax = cms.double( 0.025 ), + preClusteringUseChaining = cms.bool( True ), + ForceCovariance = cms.bool( False ), + hitDropLimit6Hits = cms.double( 0.3333 ), + NormChi2Cut2D = cms.double( 20.0 ), + BPMinImprovement = cms.double( 10000.0 ), + Covariance = cms.double( 0.0 ), + tanPhiMax = cms.double( 0.5 ), + SeedBig = cms.double( 0.0015 ), + onlyBestSegment = cms.bool( False ), + dRPhiFineMax = cms.double( 8.0 ), + SeedSmall = cms.double( 2.0E-4 ), + curvePenalty = cms.double( 2.0 ), + dXclusBoxMax = cms.double( 4.0 ), + BrutePruning = cms.bool( True ), + curvePenaltyThreshold = cms.double( 0.85 ), + CorrectTheErrors = cms.bool( True ), + hitDropLimit4Hits = cms.double( 0.6 ), + useShowering = cms.bool( False ), + CSCDebug = cms.untracked.bool( False ), + tanThetaMax = cms.double( 1.2 ), + NormChi2Cut3D = cms.double( 10.0 ), + minHitsPerSegment = cms.int32( 3 ), + ForceCovarianceAll = cms.bool( False ), + yweightPenaltyThreshold = cms.double( 1.0 ), + prePrunLimit = cms.double( 3.17 ), + hitDropLimit5Hits = cms.double( 0.8 ), + preClustering = cms.bool( True ), + prePrun = cms.bool( True ), + maxDPhi = cms.double( 999.0 ), + maxDTheta = cms.double( 999.0 ), + Pruning = cms.bool( True ), + dYclusBoxMax = cms.double( 8.0 ) + ), + cms.PSet( maxRatioResidualPrune = cms.double( 3.0 ), + yweightPenalty = cms.double( 1.5 ), + maxRecHitsInCluster = cms.int32( 24 ), + dPhiFineMax = cms.double( 0.025 ), + preClusteringUseChaining = cms.bool( True ), + ForceCovariance = cms.bool( False ), + hitDropLimit6Hits = cms.double( 0.3333 ), + NormChi2Cut2D = cms.double( 20.0 ), + BPMinImprovement = cms.double( 10000.0 ), + Covariance = cms.double( 0.0 ), + tanPhiMax = cms.double( 0.5 ), + SeedBig = cms.double( 0.0015 ), + onlyBestSegment = cms.bool( False ), + dRPhiFineMax = cms.double( 8.0 ), + SeedSmall = cms.double( 2.0E-4 ), + curvePenalty = cms.double( 2.0 ), + dXclusBoxMax = cms.double( 4.0 ), + BrutePruning = cms.bool( True ), + curvePenaltyThreshold = cms.double( 0.85 ), + CorrectTheErrors = cms.bool( True ), + hitDropLimit4Hits = cms.double( 0.6 ), + useShowering = cms.bool( False ), + CSCDebug = cms.untracked.bool( False ), + tanThetaMax = cms.double( 1.2 ), + NormChi2Cut3D = cms.double( 10.0 ), + minHitsPerSegment = cms.int32( 3 ), + ForceCovarianceAll = cms.bool( False ), + yweightPenaltyThreshold = cms.double( 1.0 ), + prePrunLimit = cms.double( 3.17 ), + hitDropLimit5Hits = cms.double( 0.8 ), + preClustering = cms.bool( True ), + prePrun = cms.bool( True ), + maxDPhi = cms.double( 999.0 ), + maxDTheta = cms.double( 999.0 ), + Pruning = cms.bool( True ), + dYclusBoxMax = cms.double( 8.0 ) + ) + ) + ) + ), + algo_type = cms.int32( 1 ) +) +process.hltMuonRPCDigis = cms.EDProducer( "RPCUnpackingModule", + InputLabel = cms.InputTag( "rawDataCollector" ), + doSynchro = cms.bool( False ) +) +process.hltRpcRecHits = cms.EDProducer( "RPCRecHitProducer", + recAlgoConfig = cms.PSet( ), + deadvecfile = cms.FileInPath( "RecoLocalMuon/RPCRecHit/data/RPCDeadVec.dat" ), + rpcDigiLabel = cms.InputTag( "hltMuonRPCDigis" ), + maskvecfile = cms.FileInPath( "RecoLocalMuon/RPCRecHit/data/RPCMaskVec.dat" ), + recAlgo = cms.string( "RPCRecHitStandardAlgo" ), + deadSource = cms.string( "File" ), + maskSource = cms.string( "File" ) +) +process.hltL2OfflineMuonSeeds = cms.EDProducer( "MuonSeedGenerator", + SMB_21 = cms.vdouble( 1.043, -0.124, 0.0, 0.183, 0.0, 0.0 ), + SMB_20 = cms.vdouble( 1.011, -0.052, 0.0, 0.188, 0.0, 0.0 ), + SMB_22 = cms.vdouble( 1.474, -0.758, 0.0, 0.185, 0.0, 0.0 ), + OL_2213 = cms.vdouble( 0.117, 0.0, 0.0, 0.044, 0.0, 0.0 ), + SME_11 = cms.vdouble( 3.295, -1.527, 0.112, 0.378, 0.02, 0.0 ), + SME_13 = cms.vdouble( -1.286, 1.711, 0.0, 0.356, 0.0, 0.0 ), + SME_12 = cms.vdouble( 0.102, 0.599, 0.0, 0.38, 0.0, 0.0 ), + DT_34_2_scale = cms.vdouble( -11.901897, 0.0 ), + OL_1213_0_scale = cms.vdouble( -4.488158, 0.0 ), + OL_1222_0_scale = cms.vdouble( -5.810449, 0.0 ), + DT_13 = cms.vdouble( 0.315, 0.068, -0.127, 0.051, -0.002, 0.0 ), + DT_12 = cms.vdouble( 0.183, 0.054, -0.087, 0.028, 0.002, 0.0 ), + DT_14 = cms.vdouble( 0.359, 0.052, -0.107, 0.072, -0.004, 0.0 ), + CSC_13_3_scale = cms.vdouble( -1.701268, 0.0 ), + DT_24_2_scale = cms.vdouble( -6.63094, 0.0 ), + CSC_23 = cms.vdouble( -0.081, 0.113, -0.029, 0.015, 0.008, 0.0 ), + CSC_24 = cms.vdouble( 0.004, 0.021, -0.002, 0.053, 0.0, 0.0 ), + OL_2222 = cms.vdouble( 0.107, 0.0, 0.0, 0.04, 0.0, 0.0 ), + DT_14_2_scale = cms.vdouble( -4.808546, 0.0 ), + SMB_10 = cms.vdouble( 1.387, -0.038, 0.0, 0.19, 0.0, 0.0 ), + SMB_11 = cms.vdouble( 1.247, 0.72, -0.802, 0.229, -0.075, 0.0 ), + SMB_12 = cms.vdouble( 2.128, -0.956, 0.0, 0.199, 0.0, 0.0 ), + SME_21 = cms.vdouble( -0.529, 1.194, -0.358, 0.472, 0.086, 0.0 ), + SME_22 = cms.vdouble( -1.207, 1.491, -0.251, 0.189, 0.243, 0.0 ), + DT_13_2_scale = cms.vdouble( -4.257687, 0.0 ), + CSC_34 = cms.vdouble( 0.062, -0.067, 0.019, 0.021, 0.003, 0.0 ), + SME_22_0_scale = cms.vdouble( -3.457901, 0.0 ), + DT_24_1_scale = cms.vdouble( -7.490909, 0.0 ), + OL_1232_0_scale = cms.vdouble( -5.964634, 0.0 ), + DT_23_1_scale = cms.vdouble( -5.320346, 0.0 ), + SME_13_0_scale = cms.vdouble( 0.104905, 0.0 ), + SMB_22_0_scale = cms.vdouble( 1.346681, 0.0 ), + CSC_12_1_scale = cms.vdouble( -6.434242, 0.0 ), + DT_34 = cms.vdouble( 0.044, 0.004, -0.013, 0.029, 0.003, 0.0 ), + SME_32 = cms.vdouble( -0.901, 1.333, -0.47, 0.41, 0.073, 0.0 ), + SME_31 = cms.vdouble( -1.594, 1.482, -0.317, 0.487, 0.097, 0.0 ), + CSC_13_2_scale = cms.vdouble( -6.077936, 0.0 ), + crackEtas = cms.vdouble( 0.2, 1.6, 1.7 ), + SME_11_0_scale = cms.vdouble( 1.325085, 0.0 ), + SMB_20_0_scale = cms.vdouble( 1.486168, 0.0 ), + DT_13_1_scale = cms.vdouble( -4.520923, 0.0 ), + CSC_24_1_scale = cms.vdouble( -6.055701, 0.0 ), + CSC_01_1_scale = cms.vdouble( -1.915329, 0.0 ), + DT_23 = cms.vdouble( 0.13, 0.023, -0.057, 0.028, 0.004, 0.0 ), + DT_24 = cms.vdouble( 0.176, 0.014, -0.051, 0.051, 0.003, 0.0 ), + SMB_12_0_scale = cms.vdouble( 2.283221, 0.0 ), + SMB_30_0_scale = cms.vdouble( -3.629838, 0.0 ), + SME_42 = cms.vdouble( -0.003, 0.005, 0.005, 0.608, 0.076, 0.0 ), + SME_41 = cms.vdouble( -0.003, 0.005, 0.005, 0.608, 0.076, 0.0 ), + CSC_12_2_scale = cms.vdouble( -1.63622, 0.0 ), + DT_34_1_scale = cms.vdouble( -13.783765, 0.0 ), + CSC_34_1_scale = cms.vdouble( -11.520507, 0.0 ), + OL_2213_0_scale = cms.vdouble( -7.239789, 0.0 ), + SMB_32_0_scale = cms.vdouble( -3.054156, 0.0 ), + CSC_12_3_scale = cms.vdouble( -1.63622, 0.0 ), + SME_21_0_scale = cms.vdouble( -0.040862, 0.0 ), + OL_1232 = cms.vdouble( 0.184, 0.0, 0.0, 0.066, 0.0, 0.0 ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + SMB_10_0_scale = cms.vdouble( 2.448566, 0.0 ), + EnableDTMeasurement = cms.bool( True ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + CSC_23_2_scale = cms.vdouble( -6.079917, 0.0 ), + scaleDT = cms.bool( True ), + DT_12_2_scale = cms.vdouble( -3.518165, 0.0 ), + OL_1222 = cms.vdouble( 0.848, -0.591, 0.0, 0.062, 0.0, 0.0 ), + CSC_23_1_scale = cms.vdouble( -19.084285, 0.0 ), + OL_1213 = cms.vdouble( 0.96, -0.737, 0.0, 0.052, 0.0, 0.0 ), + CSC_02 = cms.vdouble( 0.612, -0.207, 0.0, 0.067, -0.001, 0.0 ), + CSC_03 = cms.vdouble( 0.787, -0.338, 0.029, 0.101, -0.008, 0.0 ), + CSC_01 = cms.vdouble( 0.166, 0.0, 0.0, 0.031, 0.0, 0.0 ), + SMB_32 = cms.vdouble( 0.67, -0.327, 0.0, 0.22, 0.0, 0.0 ), + SMB_30 = cms.vdouble( 0.505, -0.022, 0.0, 0.215, 0.0, 0.0 ), + SMB_31 = cms.vdouble( 0.549, -0.145, 0.0, 0.207, 0.0, 0.0 ), + crackWindow = cms.double( 0.04 ), + CSC_14_3_scale = cms.vdouble( -1.969563, 0.0 ), + SMB_31_0_scale = cms.vdouble( -3.323768, 0.0 ), + DT_12_1_scale = cms.vdouble( -3.692398, 0.0 ), + SMB_21_0_scale = cms.vdouble( 1.58384, 0.0 ), + DT_23_2_scale = cms.vdouble( -5.117625, 0.0 ), + SME_12_0_scale = cms.vdouble( 2.279181, 0.0 ), + DT_14_1_scale = cms.vdouble( -5.644816, 0.0 ), + beamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + SMB_11_0_scale = cms.vdouble( 2.56363, 0.0 ), + EnableCSCMeasurement = cms.bool( True ), + CSC_14 = cms.vdouble( 0.606, -0.181, -0.002, 0.111, -0.003, 0.0 ), + OL_2222_0_scale = cms.vdouble( -7.667231, 0.0 ), + CSC_13 = cms.vdouble( 0.901, -1.302, 0.533, 0.045, 0.005, 0.0 ), + CSC_12 = cms.vdouble( -0.161, 0.254, -0.047, 0.042, -0.007, 0.0 ) +) +process.hltL2MuonSeeds = cms.EDProducer( "L2MuonSeedGenerator", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'SteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + InputObjects = cms.InputTag( "hltL1extraParticles" ), + L1MaxEta = cms.double( 2.5 ), + OfflineSeedLabel = cms.untracked.InputTag( "hltL2OfflineMuonSeeds" ), + L1MinPt = cms.double( 0.0 ), + L1MinQuality = cms.uint32( 1 ), + GMTReadoutCollection = cms.InputTag( "hltGtDigis" ), + UseUnassociatedL1 = cms.bool( False ), + UseOfflineSeed = cms.untracked.bool( True ), + Propagator = cms.string( "SteppingHelixPropagatorAny" ) +) +process.hltL2Muons = cms.EDProducer( "L2MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny', + 'hltESPFastSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + InputObjects = cms.InputTag( "hltL2MuonSeeds" ), + SeedTransformerParameters = cms.PSet( + Fitter = cms.string( "hltESPKFFittingSmootherForL2Muon" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + NMinRecHits = cms.uint32( 2 ), + UseSubRecHits = cms.bool( False ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + RescaleError = cms.double( 100.0 ) + ), + L2TrajBuilderParameters = cms.PSet( + DoRefit = cms.bool( False ), + SeedPropagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + FilterParameters = cms.PSet( + NumberOfSigma = cms.double( 3.0 ), + FitDirection = cms.string( "insideOut" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + MaxChi2 = cms.double( 1000.0 ), + MuonTrajectoryUpdatorParameters = cms.PSet( + MaxChi2 = cms.double( 25.0 ), + RescaleErrorFactor = cms.double( 100.0 ), + Granularity = cms.int32( 0 ), + ExcludeRPCFromFit = cms.bool( False ), + UseInvalidHits = cms.bool( True ), + RescaleError = cms.bool( False ) + ), + EnableRPCMeasurement = cms.bool( True ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + EnableDTMeasurement = cms.bool( True ), + RPCRecSegmentLabel = cms.InputTag( "hltRpcRecHits" ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + EnableCSCMeasurement = cms.bool( True ) + ), + NavigationType = cms.string( "Standard" ), + SeedTransformerParameters = cms.PSet( + Fitter = cms.string( "hltESPKFFittingSmootherForL2Muon" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + NMinRecHits = cms.uint32( 2 ), + UseSubRecHits = cms.bool( False ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + RescaleError = cms.double( 100.0 ) + ), + DoBackwardFilter = cms.bool( True ), + SeedPosition = cms.string( "in" ), + BWFilterParameters = cms.PSet( + NumberOfSigma = cms.double( 3.0 ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + FitDirection = cms.string( "outsideIn" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + MaxChi2 = cms.double( 100.0 ), + MuonTrajectoryUpdatorParameters = cms.PSet( + MaxChi2 = cms.double( 25.0 ), + RescaleErrorFactor = cms.double( 100.0 ), + Granularity = cms.int32( 0 ), + ExcludeRPCFromFit = cms.bool( False ), + UseInvalidHits = cms.bool( True ), + RescaleError = cms.bool( False ) + ), + EnableRPCMeasurement = cms.bool( True ), + BWSeedType = cms.string( "fromGenerator" ), + EnableDTMeasurement = cms.bool( True ), + RPCRecSegmentLabel = cms.InputTag( "hltRpcRecHits" ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + EnableCSCMeasurement = cms.bool( True ) + ), + DoSeedRefit = cms.bool( False ) + ), + DoSeedRefit = cms.bool( False ), + TrackLoaderParameters = cms.PSet( + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + DoSmoothing = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + BeamSpotPosition = cms.vdouble( 0.0, 0.0, 0.0 ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( True ) + ), + MuonTrajectoryBuilder = cms.string( "Exhaustive" ) +) +process.hltL2MuonCandidates = cms.EDProducer( "L2MuonCandidateProducer", + InputObjects = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +process.hltL2fL1sMu16L1f0L2Filtered16Q = cms.EDFilter( "HLTMuonL2PreFilter", + saveTags = cms.bool( True ), + MaxDr = cms.double( 9999.0 ), + CutOnChambers = cms.bool( False ), + PreviousCandTag = cms.InputTag( "hltL1fL1sMu16L1Filtered0" ), + MinPt = cms.double( 16.0 ), + MinN = cms.int32( 1 ), + SeedMapTag = cms.InputTag( "hltL2Muons" ), + MaxEta = cms.double( 2.5 ), + MinNhits = cms.vint32( 0, 1, 0, 1 ), + MinDxySig = cms.double( -1.0 ), + MinNchambers = cms.vint32( 0 ), + AbsEtaBins = cms.vdouble( 0.9, 1.5, 2.1, 5.0 ), + MaxDz = cms.double( 9999.0 ), + CandTag = cms.InputTag( "hltL2MuonCandidates" ), + BeamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + MinDr = cms.double( -1.0 ), + NSigmaPt = cms.double( 0.0 ), + MinNstations = cms.vint32( 0, 2, 0, 2 ) +) +process.hltSiPixelDigis = cms.EDProducer( "SiPixelRawToDigi", + UseQualityInfo = cms.bool( False ), + CheckPixelOrder = cms.bool( False ), + IncludeErrors = cms.bool( False ), + InputLabel = cms.InputTag( "rawDataCollector" ), + ErrorList = cms.vint32( ), + Regions = cms.PSet( ), + Timing = cms.untracked.bool( False ), + UserErrorList = cms.vint32( ) +) +process.hltSiPixelClusters = cms.EDProducer( "SiPixelClusterProducer", + src = cms.InputTag( "hltSiPixelDigis" ), + ChannelThreshold = cms.int32( 1000 ), + maxNumberOfClusters = cms.int32( 20000 ), + VCaltoElectronGain = cms.int32( 65 ), + MissCalibrate = cms.untracked.bool( True ), + SplitClusters = cms.bool( False ), + VCaltoElectronOffset = cms.int32( -414 ), + payloadType = cms.string( "HLT" ), + SeedThreshold = cms.int32( 1000 ), + ClusterThreshold = cms.double( 4000.0 ) +) +process.hltSiPixelClustersCache = cms.EDProducer( "SiPixelClusterShapeCacheProducer", + src = cms.InputTag( "hltSiPixelClusters" ), + onDemand = cms.bool( False ) +) +process.hltSiPixelRecHits = cms.EDProducer( "SiPixelRecHitConverter", + VerboseLevel = cms.untracked.int32( 0 ), + src = cms.InputTag( "hltSiPixelClusters" ), + CPE = cms.string( "hltESPPixelCPEGeneric" ) +) +process.hltSiStripExcludedFEDListProducer = cms.EDProducer( "SiStripExcludedFEDListProducer", + ProductLabel = cms.InputTag( "rawDataCollector" ) +) +process.hltSiStripRawToClustersFacility = cms.EDProducer( "SiStripClusterizerFromRaw", + ProductLabel = cms.InputTag( "rawDataCollector" ), + DoAPVEmulatorCheck = cms.bool( False ), + Algorithms = cms.PSet( + SiStripFedZeroSuppressionMode = cms.uint32( 4 ), + CommonModeNoiseSubtractionMode = cms.string( "Median" ), + PedestalSubtractionFedMode = cms.bool( True ), + TruncateInSuppressor = cms.bool( True ), + doAPVRestore = cms.bool( False ), + useCMMeanMap = cms.bool( False ) + ), + Clusterizer = cms.PSet( + ChannelThreshold = cms.double( 2.0 ), + MaxSequentialBad = cms.uint32( 1 ), + MaxSequentialHoles = cms.uint32( 0 ), + Algorithm = cms.string( "ThreeThresholdAlgorithm" ), + MaxAdjacentBad = cms.uint32( 0 ), + QualityLabel = cms.string( "" ), + SeedThreshold = cms.double( 3.0 ), + ClusterThreshold = cms.double( 5.0 ), + setDetId = cms.bool( True ), + RemoveApvShots = cms.bool( True ) + ), + onDemand = cms.bool( True ) +) +process.hltSiStripClusters = cms.EDProducer( "MeasurementTrackerEventProducer", + inactivePixelDetectorLabels = cms.VInputTag( ), + stripClusterProducer = cms.string( "hltSiStripRawToClustersFacility" ), + pixelClusterProducer = cms.string( "hltSiPixelClusters" ), + switchOffPixelsIfEmpty = cms.bool( True ), + inactiveStripDetectorLabels = cms.VInputTag( 'hltSiStripExcludedFEDListProducer' ), + skipClusters = cms.InputTag( "" ), + measurementTracker = cms.string( "hltESPMeasurementTracker" ) +) +process.hltL3TrajSeedOIState = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + propagatorCompatibleName = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + option = cms.uint32( 3 ), + maxChi2 = cms.double( 40.0 ), + errorMatrixPset = cms.PSet( + atIP = cms.bool( True ), + action = cms.string( "use" ), + errorMatrixValuesPSet = cms.PSet( + pf3_V12 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V13 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V11 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V14 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V15 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + yAxis = cms.vdouble( 0.0, 1.0, 1.4, 10.0 ), + pf3_V33 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + zAxis = cms.vdouble( -3.14159, 3.14159 ), + pf3_V44 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + xAxis = cms.vdouble( 0.0, 13.0, 30.0, 70.0, 1000.0 ), + pf3_V22 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V23 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V45 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V55 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V34 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V35 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V25 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V24 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ) + ) + ), + propagatorName = cms.string( "hltESPSteppingHelixPropagatorAlong" ), + manySeeds = cms.bool( False ), + copyMuonRecHit = cms.bool( False ), + ComponentName = cms.string( "TSGForRoadSearch" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSteppingHelixPropagatorOpposite', + 'hltESPSteppingHelixPropagatorAlong' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( ), + PtCut = cms.double( 1.0 ) +) +process.hltL3TrackCandidateFromL2OIState = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedOIState" ), + reverseTrajectories = cms.bool( True ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilderSeedHit" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilderSeedHit" ), + maxNSeeds = cms.uint32( 100000 ) +) +process.hltL3TkTracksFromL2OIState = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2OIState" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +process.hltL3MuonsOIState = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2OIState" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +process.hltL3TrajSeedOIHit = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + PSetNames = cms.vstring( 'skipTSG', + 'iterativeTSG' ), + L3TkCollectionA = cms.InputTag( "hltL3MuonsOIState" ), + iterativeTSG = cms.PSet( + ErrorRescaling = cms.double( 3.0 ), + beamSpot = cms.InputTag( "unused" ), + MaxChi2 = cms.double( 40.0 ), + errorMatrixPset = cms.PSet( + atIP = cms.bool( True ), + action = cms.string( "use" ), + errorMatrixValuesPSet = cms.PSet( + pf3_V12 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V13 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V11 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V14 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V15 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + yAxis = cms.vdouble( 0.0, 1.0, 1.4, 10.0 ), + pf3_V33 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + zAxis = cms.vdouble( -3.14159, 3.14159 ), + pf3_V44 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + xAxis = cms.vdouble( 0.0, 13.0, 30.0, 70.0, 1000.0 ), + pf3_V22 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V23 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V45 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V55 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V34 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V35 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V25 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V24 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ) + ) + ), + UpdateState = cms.bool( True ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SelectState = cms.bool( False ), + SigmaZ = cms.double( 25.0 ), + ResetMethod = cms.string( "matrix" ), + ComponentName = cms.string( "TSGFromPropagation" ), + UseVertexState = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAnyOpposite" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + skipTSG = cms.PSet( ), + ComponentName = cms.string( "DualByL2TSG" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'PropagatorWithMaterial', + 'hltESPSmartPropagatorAnyOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( + cleanerFromSharedHits = cms.bool( True ), + ptCleaner = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + directionCleaner = cms.bool( True ) + ), + PtCut = cms.double( 1.0 ) +) +process.hltL3TrackCandidateFromL2OIHit = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedOIHit" ), + reverseTrajectories = cms.bool( True ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilder" ), + maxNSeeds = cms.uint32( 100000 ) +) +process.hltL3TkTracksFromL2OIHit = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2OIHit" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +process.hltL3MuonsOIHit = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2OIHit" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +process.hltL3TkFromL2OICombination = cms.EDProducer( "L3TrackCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit' ) +) +process.hltPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +process.hltPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +process.hltMixedLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg', + 'FPix2_pos+TEC1_pos', + 'FPix2_pos+TEC2_pos', + 'TEC1_pos+TEC2_pos', + 'TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC1_neg', + 'FPix2_neg+TEC2_neg', + 'TEC1_neg+TEC2_neg', + 'TEC2_neg+TEC3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +process.hltL3TrajSeedIOHit = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + PSetNames = cms.vstring( 'skipTSG', + 'iterativeTSG' ), + L3TkCollectionA = cms.InputTag( "hltL3TkFromL2OICombination" ), + iterativeTSG = cms.PSet( + firstTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 0 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.06 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + PSetNames = cms.vstring( 'firstTSG', + 'secondTSG' ), + ComponentName = cms.string( "CombinedTSG" ), + thirdTSG = cms.PSet( + PSetNames = cms.vstring( 'endcapTSG', + 'barrelTSG' ), + barrelTSG = cms.PSet( ), + endcapTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + etaSeparation = cms.double( 2.0 ), + ComponentName = cms.string( "DualByEtaTSG" ) + ), + secondTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltPixelLayerPairs" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ) + ), + skipTSG = cms.PSet( ), + ComponentName = cms.string( "DualByL2TSG" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'PropagatorWithMaterial' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.1 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.1 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( + cleanerFromSharedHits = cms.bool( True ), + ptCleaner = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + directionCleaner = cms.bool( True ) + ), + PtCut = cms.double( 1.0 ) +) +process.hltL3TrackCandidateFromL2IOHit = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedIOHit" ), + reverseTrajectories = cms.bool( False ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilder" ), + maxNSeeds = cms.uint32( 100000 ) +) +process.hltL3TkTracksFromL2IOHit = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2IOHit" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +process.hltL3MuonsIOHit = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2IOHit" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +process.hltL3TrajectorySeed = cms.EDProducer( "L3MuonTrajectorySeedCombiner", + labels = cms.VInputTag( 'hltL3TrajSeedIOHit','hltL3TrajSeedOIState','hltL3TrajSeedOIHit' ) +) +process.hltL3TrackCandidateFromL2 = cms.EDProducer( "L3TrackCandCombiner", + labels = cms.VInputTag( 'hltL3TrackCandidateFromL2IOHit','hltL3TrackCandidateFromL2OIHit','hltL3TrackCandidateFromL2OIState' ) +) +process.hltL3TkTracksMergeStep1 = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2OIState" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltL3TkTracksFromL2OIHit" ), + LostHitPenalty = cms.double( 0.0 ), + FoundHitBonus = cms.double( 100.0 ) +) +process.hltL3TkTracksFromL2 = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksMergeStep1" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltL3TkTracksFromL2IOHit" ), + LostHitPenalty = cms.double( 0.0 ), + FoundHitBonus = cms.double( 100.0 ) +) +process.hltL3MuonsLinksCombination = cms.EDProducer( "L3TrackLinksCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit','hltL3MuonsIOHit' ) +) +process.hltL3Muons = cms.EDProducer( "L3TrackCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit','hltL3MuonsIOHit' ) +) +process.hltL3MuonCandidates = cms.EDProducer( "L3MuonCandidateProducer", + InputLinksObjects = cms.InputTag( "hltL3MuonsLinksCombination" ), + InputObjects = cms.InputTag( "hltL3Muons" ), + MuonPtOption = cms.string( "Tracker" ) +) +process.hltL3fL1sMu16L1f0L2f16QL3Filtered40Q = cms.EDFilter( "HLTMuonL3PreFilter", + MaxNormalizedChi2 = cms.double( 20.0 ), + saveTags = cms.bool( True ), + PreviousCandTag = cms.InputTag( "hltL2fL1sMu16L1f0L2Filtered16Q" ), + MinNmuonHits = cms.int32( 0 ), + MinN = cms.int32( 1 ), + MinTrackPt = cms.double( 0.0 ), + MaxEta = cms.double( 2.5 ), + MaxDXYBeamSpot = cms.double( 0.1 ), + MinNhits = cms.int32( 0 ), + MinDxySig = cms.double( -1.0 ), + NSigmaPt = cms.double( 0.0 ), + MaxDz = cms.double( 9999.0 ), + MaxPtDifference = cms.double( 9999.0 ), + MaxDr = cms.double( 2.0 ), + CandTag = cms.InputTag( "hltL3MuonCandidates" ), + MinDr = cms.double( -1.0 ), + BeamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + MinPt = cms.double( 40.0 ) +) +process.hltBoolEnd = cms.EDFilter( "HLTBool", + result = cms.bool( True ) +) +process.hltL1sL1SingleEG20ORL1SingleEG22 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG20 OR L1_SingleEG22" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPreEle27WP80Gsf = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) @@ -2162,6 +3709,13 @@ headerUnpacking = cms.bool( True ), memUnpacking = cms.bool( True ) ) +process.hltEcalPreshowerDigis = cms.EDProducer( "ESRawToDigi", + sourceTag = cms.InputTag( "rawDataCollector" ), + debugMode = cms.untracked.bool( False ), + InstanceES = cms.string( "" ), + LookupTable = cms.FileInPath( "EventFilter/ESDigiToRaw/data/ES_lookup_table.dat" ), + ESdigiCollection = cms.string( "" ) +) process.hltEcalUncalibRecHit = cms.EDProducer( "EcalUncalibRecHitProducer", EEdigiCollection = cms.InputTag( 'hltEcalDigis','eeDigis' ), alphaEB = cms.double( 1.138 ), @@ -2256,6 +3810,357 @@ logWarningEtThreshold_EB_FE = cms.double( 50.0 ), recoverEEIsolatedChannels = cms.bool( False ) ) +process.hltEcalPreshowerRecHit = cms.EDProducer( "ESRecHitProducer", + ESRecoAlgo = cms.int32( 0 ), + ESrechitCollection = cms.string( "EcalRecHitsES" ), + algo = cms.string( "ESRecHitWorker" ), + ESdigiCollection = cms.InputTag( "hltEcalPreshowerDigis" ) +) +process.hltRechitInRegionsECAL = cms.EDProducer( "EgammaHLTRechitInRegionsProducer", + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + useUncalib = cms.bool( False ), + regionEtaMargin = cms.double( 0.14 ), + ecalhitLabels = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + regionPhiMargin = cms.double( 0.4 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1UpperThr = cms.double( 999.0 ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + productLabels = cms.vstring( 'EcalRecHitsEB', + 'EcalRecHitsEE' ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ) +) +process.hltRechitInRegionsES = cms.EDProducer( "EgammaHLTRechitInRegionsProducer", + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + useUncalib = cms.bool( False ), + regionEtaMargin = cms.double( 0.14 ), + ecalhitLabels = cms.VInputTag( 'hltEcalPreshowerRecHit:EcalRecHitsES' ), + regionPhiMargin = cms.double( 0.4 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1UpperThr = cms.double( 999.0 ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + productLabels = cms.vstring( 'EcalRecHitsES' ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ) +) +process.hltParticleFlowRecHitECALL1Seeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +process.hltParticleFlowRecHitPSL1Seeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsES','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +process.hltParticleFlowClusterPSL1Seeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSL1Seeded" ) +) +process.hltParticleFlowClusterECALUncorrectedL1Seeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALL1Seeded" ) +) +process.hltParticleFlowClusterECALL1Seeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSL1Seeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedL1Seeded" ) +) +process.hltParticleFlowSuperClusterECALL1Seeded = cms.EDProducer( "PFECALSuperClusterProducer", + PFSuperClusterCollectionEndcap = cms.string( "hltParticleFlowSuperClusterECALEndcap" ), + doSatelliteClusterMerge = cms.bool( False ), + thresh_PFClusterBarrel = cms.double( 4.0 ), + PFBasicClusterCollectionBarrel = cms.string( "hltParticleFlowBasicClusterECALBarrel" ), + useRegression = cms.bool( False ), + satelliteMajorityFraction = cms.double( 0.5 ), + thresh_PFClusterEndcap = cms.double( 4.0 ), + ESAssociation = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + PFBasicClusterCollectionPreshower = cms.string( "hltParticleFlowBasicClusterECALPreshower" ), + use_preshower = cms.bool( True ), + verbose = cms.untracked.bool( False ), + thresh_SCEt = cms.double( 4.0 ), + etawidth_SuperClusterEndcap = cms.double( 0.04 ), + phiwidth_SuperClusterEndcap = cms.double( 0.6 ), + useDynamicDPhiWindow = cms.bool( True ), + PFSuperClusterCollectionBarrel = cms.string( "hltParticleFlowSuperClusterECALBarrel" ), + regressionConfig = cms.PSet( + regressionKeyEE = cms.string( "pfscecal_EECorrection_offline" ), + ecalRecHitsEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + ecalRecHitsEB = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + regressionKeyEB = cms.string( "pfscecal_EBCorrection_offline" ), + vertexCollection = cms.InputTag( "offlinePrimaryVertices" ) + ), + applyCrackCorrections = cms.bool( False ), + satelliteClusterSeedThreshold = cms.double( 50.0 ), + etawidth_SuperClusterBarrel = cms.double( 0.04 ), + PFBasicClusterCollectionEndcap = cms.string( "hltParticleFlowBasicClusterECALEndcap" ), + PFClusters = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + thresh_PFClusterSeedBarrel = cms.double( 4.0 ), + ClusteringType = cms.string( "Mustache" ), + EnergyWeight = cms.string( "Raw" ), + BeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + thresh_PFClusterSeedEndcap = cms.double( 4.0 ), + phiwidth_SuperClusterBarrel = cms.double( 0.6 ), + thresh_PFClusterES = cms.double( 5.0 ), + seedThresholdIsET = cms.bool( True ), + PFSuperClusterCollectionEndcapWithPreshower = cms.string( "hltParticleFlowSuperClusterECALEndcapWithPreshower" ) +) +process.hltEgammaCandidates = cms.EDProducer( "EgammaHLTRecoEcalCandidateProducers", + scIslandEndcapProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + scHybridBarrelProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ), + recoEcalCandidateCollection = cms.string( "" ) +) +process.hltEGL1SingleEG20ORL1SingleEG22Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG20ORL1SingleEG22" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltEG27EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG20ORL1SingleEG22Filter" ), + etcutEB = cms.double( 27.0 ), + etcutEE = cms.double( 27.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltEgammaClusterShape = cms.EDProducer( "EgammaHLTClusterShapeProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + ecalRechitEB = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + ecalRechitEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + isIeta = cms.bool( True ) +) +process.hltEle27WP80ClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.01 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG27EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) process.hltHcalDigis = cms.EDProducer( "HcalRawToDigi", UnpackZDC = cms.untracked.bool( True ), FilterDataQuality = cms.bool( True ), @@ -2520,6 +4425,1784 @@ HOGrid = cms.vdouble( ), EBGrid = cms.vdouble( ) ) +process.hltFixedGridRhoFastjetAllCaloForMuons = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 2.5 ), + pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) +) +process.hltEgammaHoverE = cms.EDProducer( "EgammaHLTBcHcalIsolationProducersRegional", + caloTowerProducer = cms.InputTag( "hltTowerMakerForAll" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.14 ), + innerCone = cms.double( 0.0 ), + useSingleTower = cms.bool( False ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + etMin = cms.double( 0.0 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( False ) +) +process.hltEle27WP80HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEle27WP80ClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEgammaEcalPFClusterIso = cms.EDProducer( "EgammaHLTEcalPFClusterIsolationProducer", + energyEndcap = cms.double( 0.0 ), + effectiveAreaBarrel = cms.double( 0.149 ), + etaStripBarrel = cms.double( 0.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + pfClusterProducer = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + etaStripEndcap = cms.double( 0.0 ), + drVetoBarrel = cms.double( 0.0 ), + drMax = cms.double( 0.3 ), + doRhoCorrection = cms.bool( True ), + energyBarrel = cms.double( 0.0 ), + effectiveAreaEndcap = cms.double( 0.097 ), + drVetoEndcap = cms.double( 0.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ) +) +process.hltEle27WP80EcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.15 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.2 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEle27WP80HEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltRegionalTowerForEgamma = cms.EDProducer( "EgammaHLTCaloTowerProducer", + L1NonIsoCand = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + EMin = cms.double( 0.8 ), + EtMin = cms.double( 0.5 ), + L1IsoCand = cms.InputTag( 'hltL1extraParticles','Isolated' ), + useTowersInCone = cms.double( 0.8 ), + towerCollection = cms.InputTag( "hltTowerMakerForAll" ) +) +process.hltParticleFlowRecHitHCALForEgamma = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltRegionalTowerForEgamma" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +process.hltParticleFlowClusterHCALForEgamma = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCALForEgamma" ) +) +process.hltEgammaHcalPFClusterIso = cms.EDProducer( "EgammaHLTHcalPFClusterIsolationProducer", + energyEndcap = cms.double( 0.0 ), + useHF = cms.bool( False ), + effectiveAreaBarrel = cms.double( 0.06 ), + etaStripBarrel = cms.double( 0.0 ), + pfClusterProducerHFHAD = cms.InputTag( "hltParticleFlowClusterHFHADForEgamma" ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + etaStripEndcap = cms.double( 0.0 ), + drVetoBarrel = cms.double( 0.0 ), + pfClusterProducerHCAL = cms.InputTag( "hltParticleFlowClusterHCALForEgamma" ), + drMax = cms.double( 0.3 ), + doRhoCorrection = cms.bool( True ), + energyBarrel = cms.double( 0.0 ), + effectiveAreaEndcap = cms.double( 0.089 ), + drVetoEndcap = cms.double( 0.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + pfClusterProducerHFEM = cms.InputTag( "hltParticleFlowClusterHFEMForEgamma" ), + rhoScale = cms.double( 1.0 ) +) +process.hltEle27WP80HcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.11 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.11 ), + thrRegularEB = cms.double( 999999.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEle27WP80EcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEgammaElectronPixelSeeds = cms.EDProducer( "ElectronSeedProducer", + endcapSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + SeedConfiguration = cms.PSet( + searchInTIDTEC = cms.bool( True ), + HighPtThreshold = cms.double( 35.0 ), + r2MinF = cms.double( -0.15 ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + DeltaPhi1Low = cms.double( 0.23 ), + DeltaPhi1High = cms.double( 0.08 ), + ePhiMin1 = cms.double( -0.08 ), + PhiMin2 = cms.double( -0.004 ), + LowPtThreshold = cms.double( 3.0 ), + RegionPSet = cms.PSet( + deltaPhiRegion = cms.double( 0.4 ), + originHalfLength = cms.double( 15.0 ), + useZInVertex = cms.bool( True ), + deltaEtaRegion = cms.double( 0.1 ), + ptMin = cms.double( 1.5 ), + originRadius = cms.double( 0.2 ), + VertexProducer = cms.InputTag( "dummyVertices" ) + ), + maxHOverE = cms.double( 999999.0 ), + dynamicPhiRoad = cms.bool( False ), + ePhiMax1 = cms.double( 0.04 ), + DeltaPhi2 = cms.double( 0.004 ), + measurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SizeWindowENeg = cms.double( 0.675 ), + nSigmasDeltaZ1 = cms.double( 5.0 ), + rMaxI = cms.double( 0.2 ), + PhiMax2 = cms.double( 0.004 ), + preFilteredSeeds = cms.bool( True ), + r2MaxF = cms.double( 0.15 ), + pPhiMin1 = cms.double( -0.04 ), + initialSeeds = cms.InputTag( "noSeedsHere" ), + pPhiMax1 = cms.double( 0.08 ), + hbheModule = cms.string( "hbhereco" ), + SCEtCut = cms.double( 3.0 ), + z2MaxB = cms.double( 0.09 ), + fromTrackerSeeds = cms.bool( True ), + hcalRecHits = cms.InputTag( "hltHbhereco" ), + z2MinB = cms.double( -0.09 ), + hbheInstance = cms.string( "" ), + rMinI = cms.double( -0.2 ), + hOverEConeSize = cms.double( 0.0 ), + hOverEHBMinE = cms.double( 999999.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + applyHOverECut = cms.bool( False ), + hOverEHFMinE = cms.double( 999999.0 ), + measurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + barrelSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ) +) +process.hltEle27WP80PixelMatchFilter = cms.EDFilter( "HLTElectronPixelMatchFilter", + saveTags = cms.bool( False ), + s2_threshold = cms.double( 0.4 ), + npixelmatchcut = cms.double( 1.0 ), + tanhSO10InterThres = cms.double( 1.0 ), + doIsolated = cms.bool( True ), + s_a_phi1B = cms.double( 0.0069 ), + s_a_phi1F = cms.double( 0.0076 ), + s_a_phi1I = cms.double( 0.0088 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + candTag = cms.InputTag( "hltEle27WP80HcalIsoFilter" ), + tanhSO10ForwardThres = cms.double( 1.0 ), + L1IsoPixelSeedsTag = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + L1NonIsoCand = cms.InputTag( "" ), + ncandcut = cms.int32( 1 ), + tanhSO10BarrelThres = cms.double( 0.35 ), + s_a_rF = cms.double( 0.04 ), + L1NonIsoPixelSeedsTag = cms.InputTag( "" ), + s_a_rI = cms.double( 0.027 ), + s_a_phi2I = cms.double( 7.0E-4 ), + useS = cms.bool( False ), + s_a_phi2B = cms.double( 3.7E-4 ), + s_a_zB = cms.double( 0.012 ), + s_a_phi2F = cms.double( 0.00906 ) +) +process.hltEgammaCkfTrackCandidatesForGSF = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( True ), + useHitsSplitting = cms.bool( True ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( True ), + maxNSeeds = cms.uint32( 1000000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetTrajectoryBuilderForElectrons" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltEgammaGsfTracks = cms.EDProducer( "GsfTrackProducer", + src = cms.InputTag( "hltEgammaCkfTrackCandidatesForGSF" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + producer = cms.string( "" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPGsfElectronFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "hltESPMeasurementTracker" ), + AlgorithmName = cms.string( "gsf" ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + Propagator = cms.string( "hltESPFwdElectronPropagator" ) +) +process.hltEgammaGsfElectrons = cms.EDProducer( "EgammaHLTPixelMatchElectronProducers", + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseGsfTracks = cms.bool( True ), + TrackProducer = cms.InputTag( "" ), + GsfTrackProducer = cms.InputTag( "hltEgammaGsfTracks" ) +) +process.hltEgammaGsfTrackVars = cms.EDProducer( "EgammaHLTGsfTrackVarProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + upperTrackNrToRemoveCut = cms.int32( 9999 ), + lowerTrackNrToRemoveCut = cms.int32( -1 ), + inputCollection = cms.InputTag( "hltEgammaGsfTracks" ) +) +process.hltEle27WP80GsfOneOEMinusOneOPFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.05 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.05 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','OneOESuperMinusOneOP' ), + candTag = cms.InputTag( "hltEle27WP80PixelMatchFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEle27WP80GsfDetaFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.007 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.007 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Deta' ), + candTag = cms.InputTag( "hltEle27WP80GsfOneOEMinusOneOPFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEle27WP80GsfDphiFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.06 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Dphi' ), + candTag = cms.InputTag( "hltEle27WP80GsfDetaFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltElectronsVertex = cms.EDProducer( "VertexFromTrackProducer", + verbose = cms.untracked.bool( False ), + useTriggerFilterElectrons = cms.bool( False ), + beamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + isRecoCandidate = cms.bool( True ), + trackLabel = cms.InputTag( "hltEgammaGsfElectrons" ), + useTriggerFilterMuons = cms.bool( False ), + useBeamSpot = cms.bool( True ), + vertexLabel = cms.InputTag( "None" ), + triggerFilterElectronsSrc = cms.InputTag( "None" ), + triggerFilterMuonsSrc = cms.InputTag( "None" ), + useVertex = cms.bool( False ) +) +process.hltPixelTracksElectrons = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalTrackingRegionWithVerticesProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 0.3 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + useFixedError = cms.bool( True ), + sigmaZVertex = cms.double( 3.0 ), + fixedError = cms.double( 0.2 ), + VertexCollection = cms.InputTag( "hltElectronsVertex" ), + useFoundVertices = cms.bool( True ), + nSigmaZ = cms.double( 4.0 ), + useFakeVertices = cms.bool( True ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +process.hltPixelVerticesElectrons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracksElectrons" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0ElectronsPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracksElectrons" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0ElectronsPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1ElectronsPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1ElectronsPixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1ElectronsPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1ElectronsTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ElectronsTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ElectronsTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0ElectronsTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2ElectronsPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2ElectronsPixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2ElectronsPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForElectrons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2ElectronsTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltEgammaEleGsfTrackIso = cms.EDProducer( "EgammaHLTElectronTrackIsolationProducers", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoVetoConeSizeBarrel = cms.double( 0.03 ), + useGsfTrack = cms.bool( True ), + useSCRefs = cms.bool( True ), + trackProducer = cms.InputTag( "hltIter2MergedForElectrons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + electronProducer = cms.InputTag( "hltEgammaGsfElectrons" ), + egTrkIsoConeSize = cms.double( 0.3 ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSizeEndcap = cms.double( 0.03 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 0.15 ) +) +process.hltEle27WP80GsfTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.05 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEleGsfTrackIso" ), + candTag = cms.InputTag( "hltEle27WP80GsfDphiFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), + etcutEB = cms.double( 20.0 ), + etcutEE = cms.double( 20.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.04 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.024 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG20EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 5.5 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 5.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPixelTracks = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 24.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +process.hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +process.hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPrePFJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) process.hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", Active_Area_Repeats = cms.int32( 5 ), doAreaFastjet = cms.bool( False ), @@ -2608,9 +6291,9 @@ src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) ) -process.hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", +process.hltSingleCaloJet200 = cms.EDFilter( "HLT1CaloJet", saveTags = cms.bool( True ), - MinPt = cms.double( 260.0 ), + MinPt = cms.double( 200.0 ), MinN = cms.int32( 1 ), MaxEta = cms.double( 5.0 ), MinMass = cms.double( -1.0 ), @@ -2618,22 +6301,2536 @@ MinE = cms.double( -1.0 ), triggerType = cms.int32( 85 ) ) -process.hltBoolEnd = cms.EDFilter( "HLTBool", - result = cms.bool( True ) -) -process.hltPrePhysics = cms.EDFilter( "HLTPrescaler", - L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), - offset = cms.uint32( 0 ) -) -process.hltFEDSelector = cms.EDProducer( "EvFFEDSelector", - inputTag = cms.InputTag( "rawDataCollector" ), - fedList = cms.vuint32( 1023 ) -) -process.hltTriggerSummaryAOD = cms.EDProducer( "TriggerSummaryProducerAOD", - processName = cms.string( "@" ) -) -process.hltTriggerSummaryRAW = cms.EDProducer( "TriggerSummaryProducerRAW", - processName = cms.string( "@" ) +process.hltTowerMakerForPF = cms.EDProducer( "CaloTowersCreator", + EBSumThreshold = cms.double( 0.2 ), + MomHBDepth = cms.double( 0.2 ), + UseEtEBTreshold = cms.bool( False ), + hfInput = cms.InputTag( "hltHfreco" ), + AllowMissingInputs = cms.bool( False ), + MomEEDepth = cms.double( 0.0 ), + EESumThreshold = cms.double( 0.45 ), + HBGrid = cms.vdouble( ), + HcalAcceptSeverityLevelForRejectedHit = cms.uint32( 9999 ), + HBThreshold = cms.double( 0.4 ), + EcalSeveritiesToBeUsedInBadTowers = cms.vstring( ), + UseEcalRecoveredHits = cms.bool( False ), + MomConstrMethod = cms.int32( 1 ), + MomHEDepth = cms.double( 0.4 ), + HcalThreshold = cms.double( -1000.0 ), + HF2Weights = cms.vdouble( ), + HOWeights = cms.vdouble( ), + EEGrid = cms.vdouble( ), + UseSymEBTreshold = cms.bool( False ), + EEWeights = cms.vdouble( ), + EEWeight = cms.double( 1.0 ), + UseHO = cms.bool( False ), + HBWeights = cms.vdouble( ), + HF1Weight = cms.double( 1.0 ), + HF2Grid = cms.vdouble( ), + HEDWeights = cms.vdouble( ), + HEDGrid = cms.vdouble( ), + EBWeight = cms.double( 1.0 ), + HF1Grid = cms.vdouble( ), + EBWeights = cms.vdouble( ), + HOWeight = cms.double( 1.0 ), + HESWeight = cms.double( 1.0 ), + HESThreshold = cms.double( 0.4 ), + hbheInput = cms.InputTag( "hltHbhereco" ), + HF2Weight = cms.double( 1.0 ), + HF2Threshold = cms.double( 1.8 ), + HcalAcceptSeverityLevel = cms.uint32( 11 ), + EEThreshold = cms.double( 0.3 ), + HOThresholdPlus1 = cms.double( 1.1 ), + HOThresholdPlus2 = cms.double( 1.1 ), + HF1Weights = cms.vdouble( ), + hoInput = cms.InputTag( "hltHoreco" ), + HF1Threshold = cms.double( 1.2 ), + HOThresholdMinus1 = cms.double( 1.1 ), + HESGrid = cms.vdouble( ), + EcutTower = cms.double( -1000.0 ), + UseRejectedRecoveredEcalHits = cms.bool( False ), + UseEtEETreshold = cms.bool( False ), + HESWeights = cms.vdouble( ), + EcalRecHitSeveritiesToBeExcluded = cms.vstring( 'kTime', + 'kWeird', + 'kBad' ), + HEDWeight = cms.double( 1.0 ), + UseSymEETreshold = cms.bool( False ), + HEDThreshold = cms.double( 0.4 ), + EBThreshold = cms.double( 0.07 ), + UseRejectedHitsOnly = cms.bool( False ), + UseHcalRecoveredHits = cms.bool( True ), + HOThresholdMinus2 = cms.double( 1.1 ), + HOThreshold0 = cms.double( 1.1 ), + ecalInputs = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + UseRejectedRecoveredHcalHits = cms.bool( False ), + MomEBDepth = cms.double( 0.3 ), + HBWeight = cms.double( 1.0 ), + HOGrid = cms.vdouble( ), + EBGrid = cms.vdouble( ) +) +process.hltAK4CaloJetsPF = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForPF" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltAK4CaloJetsPFEt5 = cms.EDFilter( "EtMinCaloJetSelector", + filter = cms.bool( False ), + src = cms.InputTag( "hltAK4CaloJetsPF" ), + etMin = cms.double( 5.0 ) +) +process.hltPixelVertices = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparerForIT" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0PFLowPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( False ), + InputVertexCollection = cms.InputTag( "hltPixelVertices" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFLowPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltTrackIter0RefsForJets4Iter1 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter0TrackJets4Iter1 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTrackIter0RefsForJets4Iter1" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter0TrackAndTauJets4Iter1 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter0TrackJets4Iter1" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ) +) +process.hltIter1ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1PixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + precise = cms.bool( True ), + deltaPhi = cms.double( 1.0 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.1 ), + originRadius = cms.double( 0.05 ), + measurementTrackerName = cms.string( "hltIter1MaskedMeasurementTrackerEvent" ), + deltaEta = cms.double( 1.0 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + searchOpt = cms.bool( True ), + input = cms.InputTag( "hltIter0TrackAndTauJets4Iter1" ), + ptMin = cms.double( 0.5 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1TrackRefsForJets4Iter2 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter1Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter1TrackJets4Iter2 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter1TrackRefsForJets4Iter2" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.4 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter1TrackAndTauJets4Iter2 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.4 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter1TrackJets4Iter2" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter1Merged" ) +) +process.hltIter2ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2PixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.025 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 1.2 ), + measurementTrackerName = cms.string( "hltIter2MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.8 ), + deltaEta = cms.double( 0.8 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter1TrackAndTauJets4Iter2" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2TrackRefsForJets4Iter3 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter2Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter2TrackJets4Iter3 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter2TrackRefsForJets4Iter3" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 3.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter2TrackAndTauJets4Iter3 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 3.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter2TrackJets4Iter3" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter2Merged" ) +) +process.hltIter3ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter2PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter2ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter3MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter3ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter3LayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg', + 'BPix2+FPix1_pos+FPix2_pos', + 'BPix2+FPix1_neg+FPix2_neg', + 'FPix1_pos+FPix2_pos+TEC1_pos', + 'FPix1_neg+FPix2_neg+TEC1_neg', + 'FPix2_pos+TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC2_neg+TEC3_neg', + 'BPix2+BPix3+TIB1', + 'BPix2+BPix3+TIB2', + 'BPix1+BPix3+TIB1', + 'BPix1+BPix3+TIB2', + 'BPix1+BPix2+TIB1', + 'BPix1+BPix2+TIB2' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) +) +process.hltIter3PFlowMixedSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter3MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter2TrackAndTauJets4Iter3" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter3LayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter3PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter3PFlowMixedSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter3PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter3PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter3PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter3" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter3PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.85, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter3PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter3PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter3Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter2Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter3TrackRefsForJets4Iter4 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter3Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter3TrackJets4Iter4 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter3TrackRefsForJets4Iter4" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 4.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter3TrackAndTauJets4Iter4 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 4.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter3TrackJets4Iter4" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.0 ), + etaMaxCaloJet = cms.double( 2.0 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter3Merged" ) +) +process.hltIter4ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter3PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter3ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 70.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter4MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter4ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter4PixelLessLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'TIB1+TIB2+MTIB3', + 'TIB1+TIB2+MTID1_pos', + 'TIB1+TIB2+MTID1_neg', + 'TID1_pos+TID2_pos+TID3_pos', + 'TID1_neg+TID2_neg+TID3_neg', + 'TID1_pos+TID2_pos+MTID3_pos', + 'TID1_neg+TID2_neg+MTID3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ) + ), + MTID = cms.PSet( + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + FPix = cms.PSet( ), + MTEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + MTIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TID = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TOB = cms.PSet( ), + BPix = cms.PSet( ), + TIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ) +) +process.hltIter4PFlowPixelLessSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 1.0 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter4MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 12.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter3TrackAndTauJets4Iter4" ) + ), + RegionPsetFomBeamSpotBlockFixedZ = cms.PSet( + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originHalfLength = cms.double( 21.2 ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ) + ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "PixelClusterShapeSeedComparitor" ), + FilterAtHelixStage = cms.bool( True ), + FilterPixelHits = cms.bool( False ), + FilterStripHits = cms.bool( False ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ) + ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardMultiHitGenerator" ), + GeneratorPSet = cms.PSet( + ComponentName = cms.string( "MultiHitGeneratorFromChi2" ), + useFixedPreFiltering = cms.bool( False ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.0 ), + extraHitRZtolerance = cms.double( 0.0 ), + extraZKDBox = cms.double( 0.2 ), + extraRKDBox = cms.double( 0.2 ), + extraPhiKDBox = cms.double( 0.005 ), + fnSigmaRZ = cms.double( 2.0 ), + refitHits = cms.bool( True ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ), + maxChi2 = cms.double( 5.0 ), + chi2VsPtCut = cms.bool( True ), + pt_interv = cms.vdouble( 0.4, 0.7, 1.0, 2.0 ), + chi2_cuts = cms.vdouble( 3.0, 4.0, 5.0, 5.0 ), + debug = cms.bool( False ), + detIdsToDebug = cms.vint32( 0, 0, 0 ), + maxElement = cms.uint32( 100000 ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + SeedingLayers = cms.InputTag( "hltIter4PixelLessLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "WithTrackAngle" ) +) +process.hltIter4PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter4PFlowPixelLessSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter4PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter4PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter4PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter4" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter4PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.25 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 0 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter4PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter4Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltPFMuonMerging = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4Merged" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltMuonLinks = cms.EDProducer( "MuonLinksProducerForHLT", + pMin = cms.double( 2.5 ), + InclusiveTrackerTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + shareHitFraction = cms.double( 0.8 ), + LinkCollection = cms.InputTag( "hltL3MuonsLinksCombination" ), + ptMin = cms.double( 2.5 ) +) +process.hltMuons = cms.EDProducer( "MuonIdProducer", + TrackExtractorPSet = cms.PSet( + Diff_z = cms.double( 0.2 ), + inputTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + BeamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + ComponentName = cms.string( "TrackExtractor" ), + DR_Max = cms.double( 1.0 ), + Diff_r = cms.double( 0.1 ), + Chi2Prob_Min = cms.double( -1.0 ), + DR_Veto = cms.double( 0.01 ), + NHits_Min = cms.uint32( 0 ), + Chi2Ndof_Max = cms.double( 1.0E64 ), + Pt_Min = cms.double( -1.0 ), + DepositLabel = cms.untracked.string( "" ), + BeamlineOption = cms.string( "BeamSpotFromEvent" ) + ), + maxAbsEta = cms.double( 3.0 ), + fillGlobalTrackRefits = cms.bool( False ), + arbitrationCleanerOptions = cms.PSet( + Clustering = cms.bool( True ), + ME1a = cms.bool( True ), + ClusterDPhi = cms.double( 0.6 ), + OverlapDTheta = cms.double( 0.02 ), + Overlap = cms.bool( True ), + OverlapDPhi = cms.double( 0.0786 ), + ClusterDTheta = cms.double( 0.02 ) + ), + globalTrackQualityInputTag = cms.InputTag( "glbTrackQual" ), + addExtraSoftMuons = cms.bool( False ), + debugWithTruthMatching = cms.bool( False ), + CaloExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + DR_Max = cms.double( 1.0 ), + DepositInstanceLabels = cms.vstring( 'ecal', + 'hcal', + 'ho' ), + Noise_HE = cms.double( 0.2 ), + NoiseTow_EB = cms.double( 0.04 ), + NoiseTow_EE = cms.double( 0.15 ), + Threshold_H = cms.double( 0.5 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + Threshold_E = cms.double( 0.2 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + DepositLabel = cms.untracked.string( "Cal" ), + UseRecHitsFlag = cms.bool( False ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 1.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 1.0 ), + dREcalPreselection = cms.double( 1.0 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 1.0 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + Threshold_HO = cms.double( 0.5 ), + Noise_EE = cms.double( 0.1 ), + Noise_EB = cms.double( 0.025 ), + DR_Veto_H = cms.double( 0.1 ), + CenterConeOnCalIntersection = cms.bool( False ), + ComponentName = cms.string( "CaloExtractorByAssociator" ), + Noise_HB = cms.double( 0.2 ), + DR_Veto_E = cms.double( 0.07 ), + DR_Veto_HO = cms.double( 0.1 ), + Noise_HO = cms.double( 0.2 ) + ), + runArbitrationCleaner = cms.bool( False ), + fillEnergy = cms.bool( True ), + TrackerKinkFinderParameters = cms.PSet( + usePosition = cms.bool( False ), + diagonalOnly = cms.bool( False ) + ), + TimingFillerParameters = cms.PSet( + UseDT = cms.bool( True ), + ErrorDT = cms.double( 6.0 ), + EcalEnergyCut = cms.double( 0.4 ), + ErrorEB = cms.double( 2.085 ), + ErrorCSC = cms.double( 7.4 ), + CSCTimingParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + CSCTimeOffset = cms.double( 0.0 ), + CSCStripTimeOffset = cms.double( 0.0 ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + UseStripTime = cms.bool( True ), + CSCStripError = cms.double( 7.0 ), + CSCWireError = cms.double( 8.6 ), + CSCWireTimeOffset = cms.double( 0.0 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ), + PruneCut = cms.double( 100.0 ), + UseWireTime = cms.bool( True ) + ), + DTTimingParameters = cms.PSet( + HitError = cms.double( 6.0 ), + DoWireCorr = cms.bool( False ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + PruneCut = cms.double( 10000.0 ), + RequireBothProjections = cms.bool( False ), + HitsMin = cms.int32( 5 ), + DTTimeOffset = cms.double( 2.7 ), + DropTheta = cms.bool( True ), + UseSegmentT0 = cms.bool( False ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ) + ), + ErrorEE = cms.double( 6.95 ), + UseCSC = cms.bool( True ), + UseECAL = cms.bool( True ) + ), + inputCollectionTypes = cms.vstring( 'inner tracks', + 'links', + 'outer tracks' ), + minCaloCompatibility = cms.double( 0.6 ), + ecalDepositName = cms.string( "ecal" ), + minP = cms.double( 10.0 ), + fillIsolation = cms.bool( True ), + jetDepositName = cms.string( "jets" ), + hoDepositName = cms.string( "ho" ), + writeIsoDeposits = cms.bool( False ), + maxAbsPullX = cms.double( 4.0 ), + maxAbsPullY = cms.double( 9999.0 ), + minPt = cms.double( 10.0 ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 9999.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( True ), + dREcal = cms.double( 9999.0 ), + dREcalPreselection = cms.double( 0.05 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( True ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.2 ), + useMuon = cms.bool( True ), + useCalo = cms.bool( False ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( True ) + ), + JetExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + ExcludeMuonVeto = cms.bool( True ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 0.5 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 0.5 ), + dREcalPreselection = cms.double( 0.5 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.5 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + ComponentName = cms.string( "JetExtractor" ), + DR_Max = cms.double( 1.0 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + JetCollectionLabel = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + DR_Veto = cms.double( 0.1 ), + Threshold = cms.double( 5.0 ) + ), + fillGlobalTrackQuality = cms.bool( False ), + minPCaloMuon = cms.double( 1.0E9 ), + maxAbsDy = cms.double( 9999.0 ), + fillCaloCompatibility = cms.bool( True ), + fillMatching = cms.bool( True ), + MuonCaloCompatibility = cms.PSet( + allSiPMHO = cms.bool( False ), + PionTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_pions_lowPt_3_1_norm.root" ), + MuonTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_muons_lowPt_3_1_norm.root" ), + delta_eta = cms.double( 0.02 ), + delta_phi = cms.double( 0.02 ) + ), + fillTrackerKink = cms.bool( False ), + hcalDepositName = cms.string( "hcal" ), + sigmaThresholdToFillCandidateP4WithGlobalFit = cms.double( 2.0 ), + inputCollectionLabels = cms.VInputTag( 'hltPFMuonMerging','hltMuonLinks','hltL2Muons' ), + trackDepositName = cms.string( "tracker" ), + maxAbsDx = cms.double( 3.0 ), + ptThresholdToFillCandidateP4WithGlobalFit = cms.double( 200.0 ), + minNumberOfMatches = cms.int32( 1 ) +) +process.hltParticleFlowRecHitECALUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +process.hltParticleFlowRecHitHCAL = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltTowerMakerForPF" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +process.hltParticleFlowRecHitPSUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +process.hltParticleFlowClusterECALUncorrectedUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALUnseeded" ) +) +process.hltParticleFlowClusterPSUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSUnseeded" ) +) +process.hltParticleFlowClusterECALUnseeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedUnseeded" ) +) +process.hltParticleFlowClusterHCAL = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCAL" ) +) +process.hltParticleFlowClusterHFEM = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_EM" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_EM" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.19 ), + singleSpikeThresh = cms.double( 80.0 ), + detector = cms.string( "HF_EM" ), + minS4S1_a = cms.double( 0.11 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_EM" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFEM' ) +) +process.hltParticleFlowClusterHFHAD = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_HAD" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_HAD" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.08 ), + singleSpikeThresh = cms.double( 120.0 ), + detector = cms.string( "HF_HAD" ), + minS4S1_a = cms.double( 0.045 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_HAD" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFHAD' ) +) +process.hltLightPFTracks = cms.EDProducer( "LightPFTrackProducer", + TrackQuality = cms.string( "none" ), + UseQuality = cms.bool( False ), + TkColList = cms.VInputTag( 'hltPFMuonMerging' ) +) +process.hltParticleFlowBlock = cms.EDProducer( "PFBlockProducer", + debug = cms.untracked.bool( False ), + linkDefinitions = cms.VPSet( + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS1:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS2:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:ECAL" ), + linkerName = cms.string( "TrackAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:HCAL" ), + linkerName = cms.string( "TrackAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "ECAL:HCAL" ), + linkerName = cms.string( "ECALAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "HFEM:HFHAD" ), + linkerName = cms.string( "HFEMAndHFHADLinker" ) + ) + ), + elementImporters = cms.VPSet( + cms.PSet( importerName = cms.string( "GeneralTracksImporter" ), + useIterativeTracking = cms.bool( False ), + source = cms.InputTag( "hltLightPFTracks" ), + NHitCuts_byTrackAlgo = cms.vuint32( 3, 3, 3, 3, 3 ), + muonSrc = cms.InputTag( "hltMuons" ), + DPtOverPtCuts_byTrackAlgo = cms.vdouble( 0.5, 0.5, 0.5, 0.5, 0.5 ) + ), + cms.PSet( importerName = cms.string( "ECALClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterECALUnseeded" ), + BCtoPFCMap = cms.InputTag( "" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHCAL" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFEM" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFHAD" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ) + ) + ), + verbose = cms.untracked.bool( False ) +) +process.hltParticleFlow = cms.EDProducer( "PFProducer", + photon_SigmaiEtaiEta_endcap = cms.double( 0.034 ), + minPtForPostCleaning = cms.double( 20.0 ), + pf_nsigma_ECAL = cms.double( 0.0 ), + GedPhotonValueMap = cms.InputTag( 'tmpGedPhotons','valMapPFEgammaCandToPhoton' ), + sumPtTrackIsoForPhoton = cms.double( -1.0 ), + metFactorForFakes = cms.double( 4.0 ), + muon_HO = cms.vdouble( 0.9, 0.9 ), + electron_missinghits = cms.uint32( 1 ), + metSignificanceForCleaning = cms.double( 3.0 ), + usePFPhotons = cms.bool( False ), + dptRel_DispVtx = cms.double( 10.0 ), + nTrackIsoForEgammaSC = cms.uint32( 2 ), + pf_nsigma_HCAL = cms.double( 1.0 ), + cosmicRejectionDistance = cms.double( 1.0 ), + useEGammaFilters = cms.bool( False ), + useEGammaElectrons = cms.bool( False ), + nsigma_TRACK = cms.double( 1.0 ), + useEGammaSupercluster = cms.bool( False ), + sumPtTrackIsoForEgammaSC_barrel = cms.double( 4.0 ), + eventFractionForCleaning = cms.double( 0.8 ), + usePFDecays = cms.bool( False ), + rejectTracks_Step45 = cms.bool( False ), + eventFractionForRejection = cms.double( 0.8 ), + photon_MinEt = cms.double( 10.0 ), + usePFNuclearInteractions = cms.bool( False ), + maxSignificance = cms.double( 2.5 ), + electron_iso_mva_endcap = cms.double( -0.1075 ), + debug = cms.untracked.bool( False ), + pf_convID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_pfConversionAug0411.txt" ), + calibHF_eta_step = cms.vdouble( 0.0, 2.9, 3.0, 3.2, 4.2, 4.4, 4.6, 4.8, 5.2, 5.4 ), + ptErrorScale = cms.double( 8.0 ), + minSignificance = cms.double( 2.5 ), + minMomentumForPunchThrough = cms.double( 100.0 ), + pf_conv_mvaCut = cms.double( 0.0 ), + useCalibrationsFromDB = cms.bool( True ), + usePFElectrons = cms.bool( False ), + electron_iso_combIso_endcap = cms.double( 10.0 ), + photon_combIso = cms.double( 10.0 ), + electron_iso_mva_barrel = cms.double( -0.1875 ), + postHFCleaning = cms.bool( False ), + factors_45 = cms.vdouble( 10.0, 100.0 ), + cleanedHF = cms.VInputTag( 'hltParticleFlowRecHitHCAL:Cleaned','hltParticleFlowClusterHFHAD:Cleaned','hltParticleFlowClusterHFEM:Cleaned' ), + coneEcalIsoForEgammaSC = cms.double( 0.3 ), + minSignificanceReduction = cms.double( 1.4 ), + photon_SigmaiEtaiEta_barrel = cms.double( 0.0125 ), + calibHF_b_HADonly = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + minPixelHits = cms.int32( 1 ), + maxDPtOPt = cms.double( 1.0 ), + useHO = cms.bool( False ), + pf_electron_output_col = cms.string( "electrons" ), + electron_noniso_mvaCut = cms.double( -0.1 ), + GedElectronValueMap = cms.InputTag( "gedGsfElectronsTmp" ), + useVerticesForNeutral = cms.bool( True ), + pf_Res_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFRes.root" ), + PFEGammaCandidates = cms.InputTag( "particleFlowEGamma" ), + sumPtTrackIsoSlopeForPhoton = cms.double( -1.0 ), + coneTrackIsoForEgammaSC = cms.double( 0.3 ), + minDeltaMet = cms.double( 0.4 ), + pt_Error = cms.double( 1.0 ), + useProtectionsForJetMET = cms.bool( True ), + metFactorForRejection = cms.double( 4.0 ), + sumPtTrackIsoForEgammaSC_endcap = cms.double( 4.0 ), + calibHF_use = cms.bool( False ), + verbose = cms.untracked.bool( False ), + usePFConversions = cms.bool( False ), + trackQuality = cms.string( "highPurity" ), + calibPFSCEle_endcap = cms.vdouble( 1.153, -16.5975, 5.668, -0.1772, 16.22, 7.326, 0.0483, -4.068, 9.406 ), + metFactorForCleaning = cms.double( 4.0 ), + eventFactorForCosmics = cms.double( 10.0 ), + egammaElectrons = cms.InputTag( "" ), + minEnergyForPunchThrough = cms.double( 100.0 ), + minTrackerHits = cms.int32( 8 ), + iCfgCandConnector = cms.PSet( + bCalibSecondary = cms.bool( False ), + bCalibPrimary = cms.bool( False ), + bCorrect = cms.bool( False ), + nuclCalibFactors = cms.vdouble( 0.8, 0.15, 0.5, 0.5, 0.05 ) + ), + rejectTracks_Bad = cms.bool( False ), + pf_electronID_crackCorrection = cms.bool( False ), + pf_locC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFClusterCorr.root" ), + calibHF_a_EMonly = cms.vdouble( 0.96945, 0.96701, 0.76309, 0.82268, 0.87583, 0.89718, 0.98674, 1.4681, 1.458, 1.458 ), + muons = cms.InputTag( "hltMuons" ), + metFactorForHighEta = cms.double( 25.0 ), + minHFCleaningPt = cms.double( 5.0 ), + muon_HCAL = cms.vdouble( 3.0, 3.0 ), + pf_electron_mvaCut = cms.double( -0.1 ), + ptFactorForHighEta = cms.double( 2.0 ), + maxDeltaPhiPt = cms.double( 7.0 ), + pf_electronID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_PfElectrons23Jan_IntToFloat.txt" ), + sumEtEcalIsoForEgammaSC_endcap = cms.double( 2.0 ), + calibHF_b_EMHAD = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + pf_GlobC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFGlobalCorr.root" ), + photon_HoE = cms.double( 0.1 ), + sumEtEcalIsoForEgammaSC_barrel = cms.double( 1.0 ), + calibPFSCEle_Fbrem_endcap = cms.vdouble( 0.9, 6.5, -0.0692932, 0.101776, 0.995338, -0.00236548, 0.874998, 1.653, -0.0750184, 0.147, 0.923165, 4.74665E-4, 1.10782 ), + punchThroughFactor = cms.double( 3.0 ), + algoType = cms.uint32( 0 ), + electron_iso_combIso_barrel = cms.double( 10.0 ), + postMuonCleaning = cms.bool( True ), + calibPFSCEle_barrel = cms.vdouble( 1.004, -1.536, 22.88, -1.467, 0.3555, 0.6227, 14.65, 2051.0, 25.0, 0.9932, -0.5444, 0.0, 0.5438, 0.7109, 7.645, 0.2904, 0.0 ), + electron_protectionsForJetMET = cms.PSet( + maxE = cms.double( 50.0 ), + maxTrackPOverEele = cms.double( 1.0 ), + maxEcalEOverP_2 = cms.double( 0.2 ), + maxHcalEOverEcalE = cms.double( 0.1 ), + maxEcalEOverP_1 = cms.double( 0.5 ), + maxHcalEOverP = cms.double( 1.0 ), + maxEcalEOverPRes = cms.double( 0.2 ), + maxHcalE = cms.double( 10.0 ), + maxEeleOverPout = cms.double( 0.2 ), + maxNtracks = cms.double( 3.0 ), + maxEleHcalEOverEcalE = cms.double( 0.1 ), + maxDPhiIN = cms.double( 0.1 ), + maxEeleOverPoutRes = cms.double( 0.5 ) + ), + electron_iso_pt = cms.double( 10.0 ), + isolatedElectronID_mvaWeightFile = cms.string( "RecoEgamma/ElectronIdentification/data/TMVA_BDTSimpleCat_17Feb2011.weights.xml" ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + X0_Map = cms.string( "RecoParticleFlow/PFProducer/data/allX0histos.root" ), + calibPFSCEle_Fbrem_barrel = cms.vdouble( 0.6, 6.0, -0.0255975, 0.0576727, 0.975442, -5.46394E-4, 1.26147, 25.0, -0.02025, 0.04537, 0.9728, -8.962E-4, 1.172 ), + blocks = cms.InputTag( "hltParticleFlowBlock" ), + punchThroughMETFactor = cms.double( 4.0 ), + metSignificanceForRejection = cms.double( 4.0 ), + photon_protectionsForJetMET = cms.PSet( + sumPtTrackIsoSlope = cms.double( 0.001 ), + sumPtTrackIso = cms.double( 2.0 ) + ), + usePhotonReg = cms.bool( False ), + dzPV = cms.double( 0.2 ), + calibHF_a_EMHAD = cms.vdouble( 1.42215, 1.00496, 0.68961, 0.81656, 0.98504, 0.98504, 1.00802, 1.0593, 1.4576, 1.4576 ), + useRegressionFromDB = cms.bool( False ), + muon_ECAL = cms.vdouble( 0.5, 0.5 ), + usePFSCEleCalib = cms.bool( True ) +) +process.hltAK4PFJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "PFJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltParticleFlow" ), + inputEtMin = cms.double( 0.0 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 0.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltFixedGridRhoFastjetAll = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 5.0 ), + pfCandidatesTag = cms.InputTag( "hltParticleFlow" ) +) +process.hltAK4PFJetsCorrected = cms.EDProducer( "PFJetCorrectionProducer", + src = cms.InputTag( "hltAK4PFJets" ), + correctors = cms.vstring( 'hltESPAK4PFCorrection' ) +) +process.hltPFJetsCorrectedMatchedToCaloJets200 = cms.EDProducer( "PFJetsMatchedToFilteredCaloJetsProducer", + DeltaR = cms.double( 0.5 ), + CaloJetFilter = cms.InputTag( "hltSingleCaloJet200" ), + TriggerType = cms.int32( 85 ), + PFJetSrc = cms.InputTag( "hltAK4PFJetsCorrected" ) +) +process.hltSinglePFJet260 = cms.EDFilter( "HLT1PFJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltPFJetsCorrectedMatchedToCaloJets200" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +process.hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrectedIDPassed" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +process.hltPrePhysics = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltFEDSelector = cms.EDProducer( "EvFFEDSelector", + inputTag = cms.InputTag( "rawDataCollector" ), + fedList = cms.vuint32( 1023 ) +) +process.hltTriggerSummaryAOD = cms.EDProducer( "TriggerSummaryProducerAOD", + processName = cms.string( "@" ) +) +process.hltTriggerSummaryRAW = cms.EDProducer( "TriggerSummaryProducerRAW", + processName = cms.string( "@" ) ) process.hltL1GtTrigReport = cms.EDAnalyzer( "L1GtTrigReport", PrintVerbosity = cms.untracked.int32( 10 ), @@ -2678,6 +8875,10 @@ dataTier = cms.untracked.string( "RAW" ) ), SelectEvents = cms.untracked.PSet( SelectEvents = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', + 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', + 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ), outputCommands = cms.untracked.vstring( 'drop *', 'keep *_hltL1GtObjectMap_*_*', @@ -2690,15 +8891,68 @@ process.HLTL1UnpackerSequence = cms.Sequence( process.hltGtDigis + process.hltGctDigis + process.hltL1GtObjectMap + process.hltL1extraParticles ) process.HLTBeamSpot = cms.Sequence( process.hltScalersRawToDigi + process.hltOnlineBeamSpot ) process.HLTBeginSequence = cms.Sequence( process.hltTriggerType + process.HLTL1UnpackerSequence + process.HLTBeamSpot ) +process.HLTMuonLocalRecoSequence = cms.Sequence( process.hltMuonDTDigis + process.hltDt1DRecHits + process.hltDt4DSegments + process.hltMuonCSCDigis + process.hltCsc2DRecHits + process.hltCscSegments + process.hltMuonRPCDigis + process.hltRpcRecHits ) +process.HLTL2muonrecoNocandSequence = cms.Sequence( process.HLTMuonLocalRecoSequence + process.hltL2OfflineMuonSeeds + process.hltL2MuonSeeds + process.hltL2Muons ) +process.HLTL2muonrecoSequence = cms.Sequence( process.HLTL2muonrecoNocandSequence + process.hltL2MuonCandidates ) +process.HLTDoLocalPixelSequence = cms.Sequence( process.hltSiPixelDigis + process.hltSiPixelClusters + process.hltSiPixelClustersCache + process.hltSiPixelRecHits ) +process.HLTDoLocalStripSequence = cms.Sequence( process.hltSiStripExcludedFEDListProducer + process.hltSiStripRawToClustersFacility + process.hltSiStripClusters ) +process.HLTL3muonTkCandidateSequence = cms.Sequence( process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltL3TrajSeedOIState + process.hltL3TrackCandidateFromL2OIState + process.hltL3TkTracksFromL2OIState + process.hltL3MuonsOIState + process.hltL3TrajSeedOIHit + process.hltL3TrackCandidateFromL2OIHit + process.hltL3TkTracksFromL2OIHit + process.hltL3MuonsOIHit + process.hltL3TkFromL2OICombination + process.hltPixelLayerTriplets + process.hltPixelLayerPairs + process.hltMixedLayerPairs + process.hltL3TrajSeedIOHit + process.hltL3TrackCandidateFromL2IOHit + process.hltL3TkTracksFromL2IOHit + process.hltL3MuonsIOHit + process.hltL3TrajectorySeed + process.hltL3TrackCandidateFromL2 ) +process.HLTL3muonrecoNocandSequence = cms.Sequence( process.HLTL3muonTkCandidateSequence + process.hltL3TkTracksMergeStep1 + process.hltL3TkTracksFromL2 + process.hltL3MuonsLinksCombination + process.hltL3Muons ) +process.HLTL3muonrecoSequence = cms.Sequence( process.HLTL3muonrecoNocandSequence + process.hltL3MuonCandidates ) +process.HLTEndSequence = cms.Sequence( process.hltBoolEnd ) +process.HLTDoFullUnpackingEgammaEcalSequence = cms.Sequence( process.hltEcalDigis + process.hltEcalPreshowerDigis + process.hltEcalUncalibRecHit + process.hltEcalDetIdToBeRecovered + process.hltEcalRecHit + process.hltEcalPreshowerRecHit ) +process.HLTPFClusteringForEgamma = cms.Sequence( process.hltRechitInRegionsECAL + process.hltRechitInRegionsES + process.hltParticleFlowRecHitECALL1Seeded + process.hltParticleFlowRecHitPSL1Seeded + process.hltParticleFlowClusterPSL1Seeded + process.hltParticleFlowClusterECALUncorrectedL1Seeded + process.hltParticleFlowClusterECALL1Seeded + process.hltParticleFlowSuperClusterECALL1Seeded ) +process.HLTDoLocalHcalWithTowerSequence = cms.Sequence( process.hltHcalDigis + process.hltHbhereco + process.hltHfreco + process.hltHoreco + process.hltTowerMakerForAll ) +process.HLTFastJetForEgamma = cms.Sequence( process.hltFixedGridRhoFastjetAllCaloForMuons ) +process.HLTPFHcalClusteringForEgamma = cms.Sequence( process.hltRegionalTowerForEgamma + process.hltParticleFlowRecHitHCALForEgamma + process.hltParticleFlowClusterHCALForEgamma ) +process.HLTGsfElectronSequence = cms.Sequence( process.hltEgammaCkfTrackCandidatesForGSF + process.hltEgammaGsfTracks + process.hltEgammaGsfElectrons + process.hltEgammaGsfTrackVars ) +process.HLTRecoPixelVertexingForElectronSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracksElectrons + process.hltPixelVerticesElectrons ) +process.HLTPixelTrackingForElectron = cms.Sequence( process.hltElectronsVertex + process.HLTDoLocalPixelSequence + process.HLTRecoPixelVertexingForElectronSequence ) +process.HLTIterativeTrackingForElectronsIteration0 = cms.Sequence( process.hltIter0ElectronsPixelSeedsFromPixelTracks + process.hltIter0ElectronsCkfTrackCandidates + process.hltIter0ElectronsCtfWithMaterialTracks + process.hltIter0ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronsIteration1 = cms.Sequence( process.hltIter1ElectronsClustersRefRemoval + process.hltIter1ElectronsMaskedMeasurementTrackerEvent + process.hltIter1ElectronsPixelLayerTriplets + process.hltIter1ElectronsPixelSeeds + process.hltIter1ElectronsCkfTrackCandidates + process.hltIter1ElectronsCtfWithMaterialTracks + process.hltIter1ElectronsTrackSelectionHighPurityLoose + process.hltIter1ElectronsTrackSelectionHighPurityTight + process.hltIter1ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronsIteration2 = cms.Sequence( process.hltIter2ElectronsClustersRefRemoval + process.hltIter2ElectronsMaskedMeasurementTrackerEvent + process.hltIter2ElectronsPixelLayerPairs + process.hltIter2ElectronsPixelSeeds + process.hltIter2ElectronsCkfTrackCandidates + process.hltIter2ElectronsCtfWithMaterialTracks + process.hltIter2ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronIter02 = cms.Sequence( process.HLTIterativeTrackingForElectronsIteration0 + process.HLTIterativeTrackingForElectronsIteration1 + process.hltIter1MergedForElectrons + process.HLTIterativeTrackingForElectronsIteration2 + process.hltIter2MergedForElectrons ) +process.HLTTrackReconstructionForIsoElectronIter02 = cms.Sequence( process.HLTPixelTrackingForElectron + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingForElectronIter02 ) +process.HLTEle27WP80GsfSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1SingleEG20ORL1SingleEG22Filter + process.hltEG27EtFilter + process.hltEgammaClusterShape + process.hltEle27WP80ClusterShapeFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltEle27WP80HEFilter + process.hltEgammaEcalPFClusterIso + process.hltEle27WP80EcalIsoFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltEle27WP80HcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltEle27WP80PixelMatchFilter + process.HLTGsfElectronSequence + process.hltEle27WP80GsfOneOEMinusOneOPFilter + process.hltEle27WP80GsfDetaFilter + process.hltEle27WP80GsfDphiFilter + process.HLTTrackReconstructionForIsoElectronIter02 + process.hltEgammaEleGsfTrackIso + process.hltEle27WP80GsfTrackIsoFilter ) +process.HLTRecoPixelVertexingForPhotonsSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracks + process.hltPixelVerticesForPhotons ) +process.HLTIterativeTrackingForPhotonsIteration0 = cms.Sequence( process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons + process.hltIter0PFlowCkfTrackCandidatesForPhotons + process.hltIter0PFlowCtfWithMaterialTracksForPhotons + process.hltIter0PFlowTrackSelectionHighPurityForPhotons ) +process.HLTIterativeTrackingForPhotonsIteration1 = cms.Sequence( process.hltIter1ClustersRefRemovalForPhotons + process.hltIter1MaskedMeasurementTrackerEventForPhotons + process.hltIter1PixelLayerTripletsForPhotons + process.hltIter1PFlowPixelSeedsForPhotons + process.hltIter1PFlowCkfTrackCandidatesForPhotons + process.hltIter1PFlowCtfWithMaterialTracksForPhotons + process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons + process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons + process.hltIter1PFlowTrackSelectionHighPurityForPhotons ) +process.HLTIterativeTrackingForPhotonsIteration2 = cms.Sequence( process.hltIter2ClustersRefRemovalForPhotons + process.hltIter2MaskedMeasurementTrackerEventForPhotons + process.hltIter2PixelLayerPairsForPhotons + process.hltIter2PFlowPixelSeedsForPhotons + process.hltIter2PFlowCkfTrackCandidatesForPhotons + process.hltIter2PFlowCtfWithMaterialTracksForPhotons + process.hltIter2PFlowTrackSelectionHighPurityForPhotons ) +process.HLTIterativeTrackingForPhotonsIter02 = cms.Sequence( process.HLTIterativeTrackingForPhotonsIteration0 + process.HLTIterativeTrackingForPhotonsIteration1 + process.hltIter1MergedForPhotons + process.HLTIterativeTrackingForPhotonsIteration2 + process.hltIter2MergedForPhotons ) +process.HLTTrackReconstructionForIsoForPhotons = cms.Sequence( process.HLTDoLocalPixelSequence + process.HLTRecoPixelVertexingForPhotonsSequence + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingForPhotonsIter02 ) +process.HLTPhoton20CaloIdVLIsoLSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1SingleEG12Filter + process.hltEG20EtFilter + process.hltEgammaClusterShape + process.hltEG20CaloIdVLClusterShapeFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltEG20CaloIdVLHEFilter + process.hltEgammaEcalPFClusterIso + process.hltEG20CaloIdVLIsoLEcalIsoFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltEG20CaloIdVLIsoLHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTTrackReconstructionForIsoForPhotons + process.hltEgammaHollowTrackIso + process.hltEG20CaloIdVLIsoLTrackIsoFilter ) process.HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence = cms.Sequence( process.hltEcalDigis + process.hltEcalUncalibRecHit + process.hltEcalDetIdToBeRecovered + process.hltEcalRecHit ) process.HLTDoLocalHcalSequence = cms.Sequence( process.hltHcalDigis + process.hltHbhereco + process.hltHfreco + process.hltHoreco ) process.HLTDoCaloSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + process.HLTDoLocalHcalSequence + process.hltTowerMakerForAll ) process.HLTAK4CaloJetsReconstructionSequence = cms.Sequence( process.HLTDoCaloSequence + process.hltAK4CaloJets + process.hltAK4CaloJetsIDPassed ) process.HLTAK4CaloJetsCorrectionSequence = cms.Sequence( process.hltFixedGridRhoFastjetAllCalo + process.hltAK4CaloJetsCorrected + process.hltAK4CaloJetsCorrectedIDPassed ) process.HLTAK4CaloJetsSequence = cms.Sequence( process.HLTAK4CaloJetsReconstructionSequence + process.HLTAK4CaloJetsCorrectionSequence ) -process.HLTEndSequence = cms.Sequence( process.hltBoolEnd ) +process.HLTDoCaloSequencePF = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + process.HLTDoLocalHcalSequence + process.hltTowerMakerForPF ) +process.HLTAK4CaloJetsPrePFRecoSequence = cms.Sequence( process.HLTDoCaloSequencePF + process.hltAK4CaloJetsPF ) +process.HLTPreAK4PFJetsRecoSequence = cms.Sequence( process.HLTAK4CaloJetsPrePFRecoSequence + process.hltAK4CaloJetsPFEt5 ) +process.HLTRecopixelvertexingSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracks + process.hltPixelVertices ) +process.HLTIterativeTrackingIteration0 = cms.Sequence( process.hltIter0PFLowPixelSeedsFromPixelTracks + process.hltIter0PFlowCkfTrackCandidates + process.hltIter0PFlowCtfWithMaterialTracks + process.hltIter0PFlowTrackSelectionHighPurity ) +process.HLTIter0TrackAndTauJet4Iter1Sequence = cms.Sequence( process.hltTrackIter0RefsForJets4Iter1 + process.hltAK4Iter0TrackJets4Iter1 + process.hltIter0TrackAndTauJets4Iter1 ) +process.HLTIterativeTrackingIteration1 = cms.Sequence( process.hltIter1ClustersRefRemoval + process.hltIter1MaskedMeasurementTrackerEvent + process.hltIter1PixelLayerTriplets + process.hltIter1PFlowPixelSeeds + process.hltIter1PFlowCkfTrackCandidates + process.hltIter1PFlowCtfWithMaterialTracks + process.hltIter1PFlowTrackSelectionHighPurityLoose + process.hltIter1PFlowTrackSelectionHighPurityTight + process.hltIter1PFlowTrackSelectionHighPurity ) +process.HLTIter1TrackAndTauJets4Iter2Sequence = cms.Sequence( process.hltIter1TrackRefsForJets4Iter2 + process.hltAK4Iter1TrackJets4Iter2 + process.hltIter1TrackAndTauJets4Iter2 ) +process.HLTIterativeTrackingIteration2 = cms.Sequence( process.hltIter2ClustersRefRemoval + process.hltIter2MaskedMeasurementTrackerEvent + process.hltIter2PixelLayerPairs + process.hltIter2PFlowPixelSeeds + process.hltIter2PFlowCkfTrackCandidates + process.hltIter2PFlowCtfWithMaterialTracks + process.hltIter2PFlowTrackSelectionHighPurity ) +process.HLTIter2TrackAndTauJets4Iter3Sequence = cms.Sequence( process.hltIter2TrackRefsForJets4Iter3 + process.hltAK4Iter2TrackJets4Iter3 + process.hltIter2TrackAndTauJets4Iter3 ) +process.HLTIterativeTrackingIteration3 = cms.Sequence( process.hltIter3ClustersRefRemoval + process.hltIter3MaskedMeasurementTrackerEvent + process.hltIter3LayerTriplets + process.hltIter3PFlowMixedSeeds + process.hltIter3PFlowCkfTrackCandidates + process.hltIter3PFlowCtfWithMaterialTracks + process.hltIter3PFlowTrackSelectionHighPurityLoose + process.hltIter3PFlowTrackSelectionHighPurityTight + process.hltIter3PFlowTrackSelectionHighPurity ) +process.HLTIter3TrackAndTauJets4Iter4Sequence = cms.Sequence( process.hltIter3TrackRefsForJets4Iter4 + process.hltAK4Iter3TrackJets4Iter4 + process.hltIter3TrackAndTauJets4Iter4 ) +process.HLTIterativeTrackingIteration4 = cms.Sequence( process.hltIter4ClustersRefRemoval + process.hltIter4MaskedMeasurementTrackerEvent + process.hltIter4PixelLessLayerTriplets + process.hltIter4PFlowPixelLessSeeds + process.hltIter4PFlowCkfTrackCandidates + process.hltIter4PFlowCtfWithMaterialTracks + process.hltIter4PFlowTrackSelectionHighPurity ) +process.HLTIterativeTrackingIter04 = cms.Sequence( process.HLTIterativeTrackingIteration0 + process.HLTIter0TrackAndTauJet4Iter1Sequence + process.HLTIterativeTrackingIteration1 + process.hltIter1Merged + process.HLTIter1TrackAndTauJets4Iter2Sequence + process.HLTIterativeTrackingIteration2 + process.hltIter2Merged + process.HLTIter2TrackAndTauJets4Iter3Sequence + process.HLTIterativeTrackingIteration3 + process.hltIter3Merged + process.HLTIter3TrackAndTauJets4Iter4Sequence + process.HLTIterativeTrackingIteration4 + process.hltIter4Merged ) +process.HLTTrackReconstructionForPF = cms.Sequence( process.HLTDoLocalPixelSequence + process.HLTRecopixelvertexingSequence + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingIter04 + process.hltPFMuonMerging + process.hltMuonLinks + process.hltMuons ) +process.HLTPreshowerSequence = cms.Sequence( process.hltEcalPreshowerDigis + process.hltEcalPreshowerRecHit ) +process.HLTParticleFlowSequence = cms.Sequence( process.HLTPreshowerSequence + process.hltParticleFlowRecHitECALUnseeded + process.hltParticleFlowRecHitHCAL + process.hltParticleFlowRecHitPSUnseeded + process.hltParticleFlowClusterECALUncorrectedUnseeded + process.hltParticleFlowClusterPSUnseeded + process.hltParticleFlowClusterECALUnseeded + process.hltParticleFlowClusterHCAL + process.hltParticleFlowClusterHFEM + process.hltParticleFlowClusterHFHAD + process.hltLightPFTracks + process.hltParticleFlowBlock + process.hltParticleFlow ) +process.HLTAK4PFJetsReconstructionSequence = cms.Sequence( process.HLTL2muonrecoSequence + process.HLTL3muonrecoSequence + process.HLTTrackReconstructionForPF + process.HLTParticleFlowSequence + process.hltAK4PFJets ) +process.HLTAK4PFJetsCorrectionSequence = cms.Sequence( process.hltFixedGridRhoFastjetAll + process.hltAK4PFJetsCorrected ) +process.HLTAK4PFJetsSequence = cms.Sequence( process.HLTPreAK4PFJetsRecoSequence + process.HLTAK4PFJetsReconstructionSequence + process.HLTAK4PFJetsCorrectionSequence ) process.HLTriggerFirstPath = cms.Path( process.hltGetConditions + process.hltGetRaw + process.hltBoolFalse ) +process.HLT_Mu40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sMu16 + process.hltPreMu40 + process.hltL1fL1sMu16L1Filtered0 + process.HLTL2muonrecoSequence + process.hltL2fL1sMu16L1f0L2Filtered16Q + process.HLTL3muonrecoSequence + process.hltL3fL1sMu16L1f0L2f16QL3Filtered40Q + process.HLTEndSequence ) +process.HLT_Ele27_WP80_Gsf_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG20ORL1SingleEG22 + process.hltPreEle27WP80Gsf + process.HLTEle27WP80GsfSequence + process.HLTEndSequence ) +process.HLT_Photon20_CaloIdVL_IsoL_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG12 + process.hltPrePhoton20CaloIdVLIsoL + process.HLTPhoton20CaloIdVLIsoLSequence + process.HLTEndSequence ) +process.HLT_PFJet260_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleJet128 + process.hltPrePFJet260 + process.HLTAK4CaloJetsSequence + process.hltSingleCaloJet200 + process.HLTAK4PFJetsSequence + process.hltPFJetsCorrectedMatchedToCaloJets200 + process.hltSinglePFJet260 + process.HLTEndSequence ) process.HLT_CaloJet260_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleJet128 + process.hltPreCaloJet260 + process.HLTAK4CaloJetsSequence + process.hltSingleCaloJet260 + process.HLTEndSequence ) process.HLT_Physics_v1 = cms.Path( process.HLTBeginSequence + process.hltPrePhysics + process.HLTEndSequence ) process.HLTriggerFinalPath = cms.Path( process.hltGtDigis + process.hltScalersRawToDigi + process.hltFEDSelector + process.hltTriggerSummaryAOD + process.hltTriggerSummaryRAW ) @@ -2718,10 +8972,6 @@ ) ) -# Disable HF Noise filters in HIon menu -if 'hltHfreco' in process.__dict__: - process.hltHfreco.setNoiseFlags = cms.bool( False ) - # CMSSW version specific customizations import os cmsswVersion = os.environ['CMSSW_VERSION'] @@ -2776,7 +9026,7 @@ # override the GlobalTag, connection string and pfnPrefix if 'GlobalTag' in process.__dict__: from Configuration.AlCa.GlobalTag_condDBv2 import GlobalTag as customiseGlobalTag - process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:hltonline_HIon', conditions = 'L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2011_v0_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') + process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:hltonline_HIon', conditions = 'L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') process.GlobalTag.connect = 'frontier://FrontierProd/CMS_CONDITIONS' process.GlobalTag.pfnPrefix = cms.untracked.string('frontier://FrontierProd/') for pset in process.GlobalTag.toGet.value(): diff --git a/HLTrigger/Configuration/test/OnData_HLT_PIon.py b/HLTrigger/Configuration/test/OnData_HLT_PIon.py index 3cef53f1e9a22..7e3f51bb71fcb 100644 --- a/HLTrigger/Configuration/test/OnData_HLT_PIon.py +++ b/HLTrigger/Configuration/test/OnData_HLT_PIon.py @@ -1,11 +1,11 @@ -# /dev/CMSSW_7_1_1/PIon/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/PIon/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms process = cms.Process( "HLTPIon" ) process.HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/PIon/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/PIon/V87') ) process.HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -453,7 +453,9 @@ ) process.streams = cms.PSet( A = cms.vstring( 'InitialPD' ) ) process.datasets = cms.PSet( InitialPD = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ) @@ -3671,8 +3673,8 @@ process.hltBoolEnd = cms.EDFilter( "HLTBool", result = cms.bool( True ) ) -process.hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), +process.hltL1sL1SingleEG20ORL1SingleEG22 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG20 OR L1_SingleEG22" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -3683,7 +3685,7 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -process.hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", +process.hltPreEle27WP80Gsf = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) @@ -4110,7 +4112,7 @@ scHybridBarrelProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ), recoEcalCandidateCollection = cms.string( "" ) ) -process.hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", +process.hltEGL1SingleEG20ORL1SingleEG22Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", doIsolated = cms.bool( False ), endcap_end = cms.double( 2.65 ), saveTags = cms.bool( False ), @@ -4120,19 +4122,19 @@ candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), region_phi_size = cms.double( 1.044 ), region_eta_size = cms.double( 0.522 ), - L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG20ORL1SingleEG22" ), candNonIsolatedTag = cms.InputTag( "" ), l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), ncandcut = cms.int32( 1 ) ) -process.hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", +process.hltEG27EtFilter = cms.EDFilter( "HLTEgammaEtFilter", saveTags = cms.bool( False ), L1NonIsoCand = cms.InputTag( "" ), relaxed = cms.untracked.bool( False ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), - etcutEB = cms.double( 20.0 ), - etcutEE = cms.double( 20.0 ), + inputTag = cms.InputTag( "hltEGL1SingleEG20ORL1SingleEG22Filter" ), + etcutEB = cms.double( 27.0 ), + etcutEE = cms.double( 27.0 ), ncandcut = cms.int32( 1 ) ) process.hltEgammaClusterShape = cms.EDProducer( "EgammaHLTClusterShapeProducer", @@ -4141,22 +4143,22 @@ ecalRechitEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), isIeta = cms.bool( True ) ) -process.hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", +process.hltEle27WP80ClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), thrOverE2EB = cms.double( -1.0 ), - thrRegularEE = cms.double( 0.04 ), + thrRegularEE = cms.double( 0.03 ), thrOverEEE = cms.double( -1.0 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), thrOverEEB = cms.double( -1.0 ), - thrRegularEB = cms.double( 0.024 ), + thrRegularEB = cms.double( 0.01 ), lessThan = cms.bool( True ), useEt = cms.bool( False ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaClusterShape" ), - candTag = cms.InputTag( "hltEG20EtFilter" ), + candTag = cms.InputTag( "hltEG27EtFilter" ), nonIsoTag = cms.InputTag( "" ) ) process.hltHcalDigis = cms.EDProducer( "HcalRawToDigi", @@ -4444,22 +4446,22 @@ rhoScale = cms.double( 1.0 ), doEtSum = cms.bool( False ) ) -process.hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", +process.hltEle27WP80HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), thrOverE2EB = cms.double( -1.0 ), thrRegularEE = cms.double( -1.0 ), - thrOverEEE = cms.double( 0.1 ), + thrOverEEE = cms.double( 0.05 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.15 ), + thrOverEEB = cms.double( 0.1 ), thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( False ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaHoverE" ), - candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + candTag = cms.InputTag( "hltEle27WP80ClusterShapeFilter" ), nonIsoTag = cms.InputTag( "" ) ) process.hltEgammaEcalPFClusterIso = cms.EDProducer( "EgammaHLTEcalPFClusterIsolationProducer", @@ -4479,22 +4481,22 @@ rhoMax = cms.double( 9.9999999E7 ), rhoScale = cms.double( 1.0 ) ) -process.hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +process.hltEle27WP80EcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 5.5 ), - thrOverEEE = cms.double( 0.012 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.15 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.012 ), - thrRegularEB = cms.double( 5.5 ), + thrOverEEB = cms.double( 0.2 ), + thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + candTag = cms.InputTag( "hltEle27WP80HEFilter" ), nonIsoTag = cms.InputTag( "" ) ) process.hltRegionalTowerForEgamma = cms.EDProducer( "EgammaHLTCaloTowerProducer", @@ -4630,25 +4632,222 @@ pfClusterProducerHFEM = cms.InputTag( "hltParticleFlowClusterHFEMForEgamma" ), rhoScale = cms.double( 1.0 ) ) -process.hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +process.hltEle27WP80HcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 3.5 ), - thrOverEEE = cms.double( 0.005 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.11 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.005 ), - thrRegularEB = cms.double( 3.5 ), + thrOverEEB = cms.double( 0.11 ), + thrRegularEB = cms.double( 999999.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + candTag = cms.InputTag( "hltEle27WP80EcalIsoFilter" ), nonIsoTag = cms.InputTag( "" ) ) -process.hltPixelTracks = cms.EDProducer( "PixelTrackProducer", +process.hltEgammaElectronPixelSeeds = cms.EDProducer( "ElectronSeedProducer", + endcapSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + SeedConfiguration = cms.PSet( + searchInTIDTEC = cms.bool( True ), + HighPtThreshold = cms.double( 35.0 ), + r2MinF = cms.double( -0.15 ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + DeltaPhi1Low = cms.double( 0.23 ), + DeltaPhi1High = cms.double( 0.08 ), + ePhiMin1 = cms.double( -0.08 ), + PhiMin2 = cms.double( -0.004 ), + LowPtThreshold = cms.double( 3.0 ), + RegionPSet = cms.PSet( + deltaPhiRegion = cms.double( 0.4 ), + originHalfLength = cms.double( 15.0 ), + useZInVertex = cms.bool( True ), + deltaEtaRegion = cms.double( 0.1 ), + ptMin = cms.double( 1.5 ), + originRadius = cms.double( 0.2 ), + VertexProducer = cms.InputTag( "dummyVertices" ) + ), + maxHOverE = cms.double( 999999.0 ), + dynamicPhiRoad = cms.bool( False ), + ePhiMax1 = cms.double( 0.04 ), + DeltaPhi2 = cms.double( 0.004 ), + measurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SizeWindowENeg = cms.double( 0.675 ), + nSigmasDeltaZ1 = cms.double( 5.0 ), + rMaxI = cms.double( 0.2 ), + PhiMax2 = cms.double( 0.004 ), + preFilteredSeeds = cms.bool( True ), + r2MaxF = cms.double( 0.15 ), + pPhiMin1 = cms.double( -0.04 ), + initialSeeds = cms.InputTag( "noSeedsHere" ), + pPhiMax1 = cms.double( 0.08 ), + hbheModule = cms.string( "hbhereco" ), + SCEtCut = cms.double( 3.0 ), + z2MaxB = cms.double( 0.09 ), + fromTrackerSeeds = cms.bool( True ), + hcalRecHits = cms.InputTag( "hltHbhereco" ), + z2MinB = cms.double( -0.09 ), + hbheInstance = cms.string( "" ), + rMinI = cms.double( -0.2 ), + hOverEConeSize = cms.double( 0.0 ), + hOverEHBMinE = cms.double( 999999.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + applyHOverECut = cms.bool( False ), + hOverEHFMinE = cms.double( 999999.0 ), + measurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + barrelSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ) +) +process.hltEle27WP80PixelMatchFilter = cms.EDFilter( "HLTElectronPixelMatchFilter", + saveTags = cms.bool( False ), + s2_threshold = cms.double( 0.4 ), + npixelmatchcut = cms.double( 1.0 ), + tanhSO10InterThres = cms.double( 1.0 ), + doIsolated = cms.bool( True ), + s_a_phi1B = cms.double( 0.0069 ), + s_a_phi1F = cms.double( 0.0076 ), + s_a_phi1I = cms.double( 0.0088 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + candTag = cms.InputTag( "hltEle27WP80HcalIsoFilter" ), + tanhSO10ForwardThres = cms.double( 1.0 ), + L1IsoPixelSeedsTag = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + L1NonIsoCand = cms.InputTag( "" ), + ncandcut = cms.int32( 1 ), + tanhSO10BarrelThres = cms.double( 0.35 ), + s_a_rF = cms.double( 0.04 ), + L1NonIsoPixelSeedsTag = cms.InputTag( "" ), + s_a_rI = cms.double( 0.027 ), + s_a_phi2I = cms.double( 7.0E-4 ), + useS = cms.bool( False ), + s_a_phi2B = cms.double( 3.7E-4 ), + s_a_zB = cms.double( 0.012 ), + s_a_phi2F = cms.double( 0.00906 ) +) +process.hltEgammaCkfTrackCandidatesForGSF = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( True ), + useHitsSplitting = cms.bool( True ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( True ), + maxNSeeds = cms.uint32( 1000000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetTrajectoryBuilderForElectrons" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltEgammaGsfTracks = cms.EDProducer( "GsfTrackProducer", + src = cms.InputTag( "hltEgammaCkfTrackCandidatesForGSF" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + producer = cms.string( "" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPGsfElectronFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "hltESPMeasurementTracker" ), + AlgorithmName = cms.string( "gsf" ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + Propagator = cms.string( "hltESPFwdElectronPropagator" ) +) +process.hltEgammaGsfElectrons = cms.EDProducer( "EgammaHLTPixelMatchElectronProducers", + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseGsfTracks = cms.bool( True ), + TrackProducer = cms.InputTag( "" ), + GsfTrackProducer = cms.InputTag( "hltEgammaGsfTracks" ) +) +process.hltEgammaGsfTrackVars = cms.EDProducer( "EgammaHLTGsfTrackVarProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + upperTrackNrToRemoveCut = cms.int32( 9999 ), + lowerTrackNrToRemoveCut = cms.int32( -1 ), + inputCollection = cms.InputTag( "hltEgammaGsfTracks" ) +) +process.hltEle27WP80GsfOneOEMinusOneOPFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.05 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.05 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','OneOESuperMinusOneOP' ), + candTag = cms.InputTag( "hltEle27WP80PixelMatchFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEle27WP80GsfDetaFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.007 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.007 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Deta' ), + candTag = cms.InputTag( "hltEle27WP80GsfOneOEMinusOneOPFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEle27WP80GsfDphiFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.06 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Dphi' ), + candTag = cms.InputTag( "hltEle27WP80GsfDetaFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltElectronsVertex = cms.EDProducer( "VertexFromTrackProducer", + verbose = cms.untracked.bool( False ), + useTriggerFilterElectrons = cms.bool( False ), + beamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + isRecoCandidate = cms.bool( True ), + trackLabel = cms.InputTag( "hltEgammaGsfElectrons" ), + useTriggerFilterMuons = cms.bool( False ), + useBeamSpot = cms.bool( True ), + vertexLabel = cms.InputTag( "None" ), + triggerFilterElectronsSrc = cms.InputTag( "None" ), + triggerFilterMuonsSrc = cms.InputTag( "None" ), + useVertex = cms.bool( False ) +) +process.hltPixelTracksElectrons = cms.EDProducer( "PixelTrackProducer", FilterPSet = cms.PSet( chi2 = cms.double( 1000.0 ), nSigmaTipMaxTolerance = cms.double( 0.0 ), @@ -4665,13 +4864,20 @@ fixImpactParameter = cms.double( 0.0 ) ), RegionFactoryPSet = cms.PSet( - ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + ComponentName = cms.string( "GlobalTrackingRegionWithVerticesProducer" ), RegionPSet = cms.PSet( precise = cms.bool( True ), originRadius = cms.double( 0.2 ), ptMin = cms.double( 0.9 ), - originHalfLength = cms.double( 24.0 ), - beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + originHalfLength = cms.double( 0.3 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + useFixedError = cms.bool( True ), + sigmaZVertex = cms.double( 3.0 ), + fixedError = cms.double( 0.2 ), + VertexCollection = cms.InputTag( "hltElectronsVertex" ), + useFoundVertices = cms.bool( True ), + nSigmaZ = cms.double( 4.0 ), + useFakeVertices = cms.bool( True ) ) ), CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), @@ -4694,32 +4900,32 @@ SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) ) ) -process.hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", +process.hltPixelVerticesElectrons = cms.EDProducer( "PixelVertexProducer", WtAverage = cms.bool( True ), Method2 = cms.bool( True ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), Verbosity = cms.int32( 0 ), UseError = cms.bool( True ), - TrackCollection = cms.InputTag( "hltPixelTracks" ), + TrackCollection = cms.InputTag( "hltPixelTracksElectrons" ), PtMin = cms.double( 1.0 ), NTrkMin = cms.int32( 2 ), ZOffset = cms.double( 5.0 ), Finder = cms.string( "DivisiveVertexFinder" ), ZSeparation = cms.double( 0.05 ) ) -process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", +process.hltIter0ElectronsPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", useEventsWithNoVertex = cms.bool( True ), originHalfLength = cms.double( 0.3 ), useProtoTrackKinematics = cms.bool( False ), usePV = cms.bool( True ), - InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - InputCollection = cms.InputTag( "hltPixelTracks" ), + InputCollection = cms.InputTag( "hltPixelTracksElectrons" ), originRadius = cms.double( 0.1 ) ) -process.hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), +process.hltIter0ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0ElectronsPixelSeedsFromPixelTracks" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -4738,8 +4944,8 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -process.hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), +process.hltIter0ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), @@ -4747,7 +4953,7 @@ Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter0ForPhotons" ), + AlgorithmName = cms.string( "iter0IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -4756,7 +4962,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -process.hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +process.hltIter0ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4783,20 +4989,20 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter0ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.4, 4.0 ), d0_par1 = cms.vdouble( 0.3, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -process.hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", +process.hltIter1ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", doStrip = cms.bool( True ), doStripChargeCheck = cms.bool( True ), - trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + trajectories = cms.InputTag( "hltIter0ElectronsTrackSelectionHighPurity" ), oldClusterRemovalInfo = cms.InputTag( "" ), stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), pixelClusters = cms.InputTag( "hltSiPixelClusters" ), @@ -4806,12 +5012,12 @@ ), doPixel = cms.bool( True ) ) -process.hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", - clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), +process.hltIter1ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), OnDemand = cms.bool( False ), src = cms.InputTag( "hltSiStripClusters" ) ) -process.hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", +process.hltIter1ElectronsPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", layerList = cms.vstring( 'BPix1+BPix2+BPix3', 'BPix1+BPix2+FPix1_pos', 'BPix1+BPix2+FPix1_neg', @@ -4825,7 +5031,7 @@ hitErrorRZ = cms.double( 0.0036 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0051 ) ), MTEC = cms.PSet( ), @@ -4837,12 +5043,12 @@ hitErrorRZ = cms.double( 0.006 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0027 ) ), TIB = cms.PSet( ) ) -process.hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", +process.hltIter1ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", RegionFactoryPSet = cms.PSet( ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), RegionPSet = cms.PSet( @@ -4852,7 +5058,7 @@ input = cms.InputTag( "hltEgammaCandidates" ), maxNRegions = cms.int32( 10 ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), zErrorBeamSpot = cms.double( 24.2 ), deltaEta = cms.double( 0.5 ), deltaPhi = cms.double( 0.5 ), @@ -4885,7 +5091,7 @@ extraHitRZtolerance = cms.double( 0.037 ), SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) ), - SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + SeedingLayers = cms.InputTag( "hltIter1ElectronsPixelLayerTriplets" ) ), SeedCreatorPSet = cms.PSet( ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), @@ -4893,8 +5099,8 @@ ), TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) -process.hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), +process.hltIter1ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1ElectronsPixelSeeds" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -4903,7 +5109,7 @@ propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) ), TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), cleanTrajectoryAfterInOut = cms.bool( False ), useHitsSplitting = cms.bool( False ), RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), @@ -4913,16 +5119,16 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -process.hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), +process.hltIter1ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter1ForPhotons" ), + AlgorithmName = cms.string( "iter1IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -4931,7 +5137,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +process.hltIter1ElectronsTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4958,17 +5164,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.9, 3.0 ), d0_par1 = cms.vdouble( 0.85, 3.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +process.hltIter1ElectronsTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4995,17 +5201,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 1.0, 4.0 ), d0_par1 = cms.vdouble( 1.0, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -process.hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", +process.hltIter1ElectronsTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -5014,13 +5220,13 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + TrackProducer1 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityLoose" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityTight" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -process.hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", +process.hltIter1MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -5029,17 +5235,17 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer1 = cms.string( "hltIter0ElectronsTrackSelectionHighPurity" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurity" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -process.hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", +process.hltIter2ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", doStrip = cms.bool( True ), doStripChargeCheck = cms.bool( True ), - trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), - oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + trajectories = cms.InputTag( "hltIter1ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), pixelClusters = cms.InputTag( "hltSiPixelClusters" ), Common = cms.PSet( @@ -5048,12 +5254,12 @@ ), doPixel = cms.bool( True ) ) -process.hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", - clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), +process.hltIter2ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), OnDemand = cms.bool( False ), src = cms.InputTag( "hltSiStripClusters" ) ) -process.hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", +process.hltIter2ElectronsPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", layerList = cms.vstring( 'BPix1+BPix2', 'BPix1+BPix3', 'BPix2+BPix3', @@ -5075,7 +5281,7 @@ hitErrorRZ = cms.double( 0.0036 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0051 ) ), MTEC = cms.PSet( ), @@ -5087,12 +5293,12 @@ hitErrorRZ = cms.double( 0.006 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0027 ) ), TIB = cms.PSet( ) ) -process.hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", +process.hltIter2ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", RegionFactoryPSet = cms.PSet( ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), RegionPSet = cms.PSet( @@ -5101,7 +5307,7 @@ ptMin = cms.double( 1.2 ), deltaEta = cms.double( 0.5 ), deltaPhi = cms.double( 0.5 ), - vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), input = cms.InputTag( "hltEgammaCandidates" ), mode = cms.string( "VerticesFixed" ), maxNRegions = cms.int32( 10 ), @@ -5128,7 +5334,7 @@ maxElement = cms.uint32( 100000 ), SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) ), - SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + SeedingLayers = cms.InputTag( "hltIter2ElectronsPixelLayerPairs" ) ), SeedCreatorPSet = cms.PSet( ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), @@ -5136,8 +5342,8 @@ ), TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) -process.hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), +process.hltIter2ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2ElectronsPixelSeeds" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -5146,7 +5352,7 @@ propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) ), TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), cleanTrajectoryAfterInOut = cms.bool( False ), useHitsSplitting = cms.bool( False ), RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), @@ -5156,16 +5362,16 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -process.hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), +process.hltIter2ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter2" ), + AlgorithmName = cms.string( "iter2IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -5174,7 +5380,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -process.hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +process.hltIter2ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -5201,17 +5407,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter2ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.4, 4.0 ), d0_par1 = cms.vdouble( 0.3, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -process.hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", +process.hltIter2MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -5220,44 +5426,48 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + TrackProducer1 = cms.string( "hltIter1MergedForElectrons" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer2 = cms.string( "hltIter2ElectronsTrackSelectionHighPurity" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -process.hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", +process.hltEgammaEleGsfTrackIso = cms.EDProducer( "EgammaHLTElectronTrackIsolationProducers", egTrkIsoStripEndcap = cms.double( 0.03 ), - egTrkIsoConeSize = cms.double( 0.29 ), - trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoVetoConeSizeBarrel = cms.double( 0.03 ), + useGsfTrack = cms.bool( True ), + useSCRefs = cms.bool( True ), + trackProducer = cms.InputTag( "hltIter2MergedForElectrons" ), egTrkIsoStripBarrel = cms.double( 0.03 ), - countTracks = cms.bool( False ), + electronProducer = cms.InputTag( "hltEgammaGsfElectrons" ), + egTrkIsoConeSize = cms.double( 0.3 ), egTrkIsoRSpan = cms.double( 999999.0 ), - egTrkIsoVetoConeSize = cms.double( 0.06 ), + egTrkIsoVetoConeSizeEndcap = cms.double( 0.03 ), recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), egTrkIsoPtMin = cms.double( 1.0 ), - egTrkIsoZSpan = cms.double( 999999.0 ) + egTrkIsoZSpan = cms.double( 0.15 ) ) -process.hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +process.hltEle27WP80GsfTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( True ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 3.5 ), - thrOverEEE = cms.double( 0.002 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.002 ), - thrRegularEB = cms.double( 3.5 ), + thrOverEEB = cms.double( 0.05 ), + thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), - isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + isoTag = cms.InputTag( "hltEgammaEleGsfTrackIso" ), + candTag = cms.InputTag( "hltEle27WP80GsfDphiFilter" ), nonIsoTag = cms.InputTag( "" ) ) -process.hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), +process.hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -5268,54 +5478,3291 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -process.hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", +process.hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) -process.hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", - Active_Area_Repeats = cms.int32( 5 ), - doAreaFastjet = cms.bool( False ), - voronoiRfact = cms.double( 0.9 ), - maxBadHcalCells = cms.uint32( 9999999 ), - doAreaDiskApprox = cms.bool( True ), - maxRecoveredEcalCells = cms.uint32( 9999999 ), - jetType = cms.string( "CaloJet" ), - minSeed = cms.uint32( 14327 ), - Ghost_EtaMax = cms.double( 6.0 ), - doRhoFastjet = cms.bool( False ), - jetAlgorithm = cms.string( "AntiKt" ), - nSigmaPU = cms.double( 1.0 ), - GhostArea = cms.double( 0.01 ), - Rho_EtaMax = cms.double( 4.4 ), - maxBadEcalCells = cms.uint32( 9999999 ), - useDeterministicSeed = cms.bool( True ), - doPVCorrection = cms.bool( False ), - maxRecoveredHcalCells = cms.uint32( 9999999 ), - rParam = cms.double( 0.4 ), - maxProblematicHcalCells = cms.uint32( 9999999 ), - doOutputJets = cms.bool( True ), - src = cms.InputTag( "hltTowerMakerForAll" ), - inputEtMin = cms.double( 0.3 ), - puPtMin = cms.double( 10.0 ), - srcPVs = cms.InputTag( "NotUsed" ), - jetPtMin = cms.double( 1.0 ), - radiusPU = cms.double( 0.4 ), - maxProblematicEcalCells = cms.uint32( 9999999 ), - doPUOffsetCorr = cms.bool( False ), - inputEMin = cms.double( 0.0 ), - useMassDropTagger = cms.bool( False ), - muMin = cms.double( -1.0 ), - subtractorName = cms.string( "" ), - muCut = cms.double( -1.0 ), - subjetPtMin = cms.double( -1.0 ), - useTrimming = cms.bool( False ), - muMax = cms.double( -1.0 ), - yMin = cms.double( -1.0 ), - useFiltering = cms.bool( False ), - rFilt = cms.double( -1.0 ), - yMax = cms.double( -1.0 ), - zcut = cms.double( -1.0 ), - MinVtxNdof = cms.int32( 5 ), +process.hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), + etcutEB = cms.double( 20.0 ), + etcutEE = cms.double( 20.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.04 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.024 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG20EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 5.5 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 5.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPixelTracks = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 24.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +process.hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +process.hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPrePFJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForAll" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltAK4CaloJetsIDPassed = cms.EDProducer( "HLTCaloJetIDProducer", + min_N90 = cms.int32( -2 ), + min_N90hits = cms.int32( 2 ), + min_EMF = cms.double( 1.0E-6 ), + jetsInput = cms.InputTag( "hltAK4CaloJets" ), + JetIDParams = cms.PSet( + useRecHits = cms.bool( True ), + hbheRecHitsColl = cms.InputTag( "hltHbhereco" ), + hoRecHitsColl = cms.InputTag( "hltHoreco" ), + hfRecHitsColl = cms.InputTag( "hltHfreco" ), + ebRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + eeRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) + ), + max_EMF = cms.double( 999.0 ) +) +process.hltFixedGridRhoFastjetAllCalo = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 5.0 ), + pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) +) +process.hltAK4CaloJetsCorrected = cms.EDProducer( "CaloJetCorrectionProducer", + src = cms.InputTag( "hltAK4CaloJets" ), + correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +) +process.hltAK4CaloJetsCorrectedIDPassed = cms.EDProducer( "CaloJetCorrectionProducer", + src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), + correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +) +process.hltSingleCaloJet200 = cms.EDFilter( "HLT1CaloJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 200.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrectedIDPassed" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +process.hltTowerMakerForPF = cms.EDProducer( "CaloTowersCreator", + EBSumThreshold = cms.double( 0.2 ), + MomHBDepth = cms.double( 0.2 ), + UseEtEBTreshold = cms.bool( False ), + hfInput = cms.InputTag( "hltHfreco" ), + AllowMissingInputs = cms.bool( False ), + MomEEDepth = cms.double( 0.0 ), + EESumThreshold = cms.double( 0.45 ), + HBGrid = cms.vdouble( ), + HcalAcceptSeverityLevelForRejectedHit = cms.uint32( 9999 ), + HBThreshold = cms.double( 0.4 ), + EcalSeveritiesToBeUsedInBadTowers = cms.vstring( ), + UseEcalRecoveredHits = cms.bool( False ), + MomConstrMethod = cms.int32( 1 ), + MomHEDepth = cms.double( 0.4 ), + HcalThreshold = cms.double( -1000.0 ), + HF2Weights = cms.vdouble( ), + HOWeights = cms.vdouble( ), + EEGrid = cms.vdouble( ), + UseSymEBTreshold = cms.bool( False ), + EEWeights = cms.vdouble( ), + EEWeight = cms.double( 1.0 ), + UseHO = cms.bool( False ), + HBWeights = cms.vdouble( ), + HF1Weight = cms.double( 1.0 ), + HF2Grid = cms.vdouble( ), + HEDWeights = cms.vdouble( ), + HEDGrid = cms.vdouble( ), + EBWeight = cms.double( 1.0 ), + HF1Grid = cms.vdouble( ), + EBWeights = cms.vdouble( ), + HOWeight = cms.double( 1.0 ), + HESWeight = cms.double( 1.0 ), + HESThreshold = cms.double( 0.4 ), + hbheInput = cms.InputTag( "hltHbhereco" ), + HF2Weight = cms.double( 1.0 ), + HF2Threshold = cms.double( 1.8 ), + HcalAcceptSeverityLevel = cms.uint32( 11 ), + EEThreshold = cms.double( 0.3 ), + HOThresholdPlus1 = cms.double( 1.1 ), + HOThresholdPlus2 = cms.double( 1.1 ), + HF1Weights = cms.vdouble( ), + hoInput = cms.InputTag( "hltHoreco" ), + HF1Threshold = cms.double( 1.2 ), + HOThresholdMinus1 = cms.double( 1.1 ), + HESGrid = cms.vdouble( ), + EcutTower = cms.double( -1000.0 ), + UseRejectedRecoveredEcalHits = cms.bool( False ), + UseEtEETreshold = cms.bool( False ), + HESWeights = cms.vdouble( ), + EcalRecHitSeveritiesToBeExcluded = cms.vstring( 'kTime', + 'kWeird', + 'kBad' ), + HEDWeight = cms.double( 1.0 ), + UseSymEETreshold = cms.bool( False ), + HEDThreshold = cms.double( 0.4 ), + EBThreshold = cms.double( 0.07 ), + UseRejectedHitsOnly = cms.bool( False ), + UseHcalRecoveredHits = cms.bool( True ), + HOThresholdMinus2 = cms.double( 1.1 ), + HOThreshold0 = cms.double( 1.1 ), + ecalInputs = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + UseRejectedRecoveredHcalHits = cms.bool( False ), + MomEBDepth = cms.double( 0.3 ), + HBWeight = cms.double( 1.0 ), + HOGrid = cms.vdouble( ), + EBGrid = cms.vdouble( ) +) +process.hltAK4CaloJetsPF = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForPF" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltAK4CaloJetsPFEt5 = cms.EDFilter( "EtMinCaloJetSelector", + filter = cms.bool( False ), + src = cms.InputTag( "hltAK4CaloJetsPF" ), + etMin = cms.double( 5.0 ) +) +process.hltPixelVertices = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparerForIT" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0PFLowPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( False ), + InputVertexCollection = cms.InputTag( "hltPixelVertices" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFLowPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltTrackIter0RefsForJets4Iter1 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter0TrackJets4Iter1 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTrackIter0RefsForJets4Iter1" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter0TrackAndTauJets4Iter1 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter0TrackJets4Iter1" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ) +) +process.hltIter1ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1PixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + precise = cms.bool( True ), + deltaPhi = cms.double( 1.0 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.1 ), + originRadius = cms.double( 0.05 ), + measurementTrackerName = cms.string( "hltIter1MaskedMeasurementTrackerEvent" ), + deltaEta = cms.double( 1.0 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + searchOpt = cms.bool( True ), + input = cms.InputTag( "hltIter0TrackAndTauJets4Iter1" ), + ptMin = cms.double( 0.5 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1TrackRefsForJets4Iter2 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter1Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter1TrackJets4Iter2 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter1TrackRefsForJets4Iter2" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.4 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter1TrackAndTauJets4Iter2 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.4 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter1TrackJets4Iter2" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter1Merged" ) +) +process.hltIter2ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2PixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.025 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 1.2 ), + measurementTrackerName = cms.string( "hltIter2MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.8 ), + deltaEta = cms.double( 0.8 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter1TrackAndTauJets4Iter2" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2TrackRefsForJets4Iter3 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter2Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter2TrackJets4Iter3 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter2TrackRefsForJets4Iter3" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 3.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter2TrackAndTauJets4Iter3 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 3.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter2TrackJets4Iter3" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter2Merged" ) +) +process.hltIter3ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter2PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter2ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter3MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter3ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter3LayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg', + 'BPix2+FPix1_pos+FPix2_pos', + 'BPix2+FPix1_neg+FPix2_neg', + 'FPix1_pos+FPix2_pos+TEC1_pos', + 'FPix1_neg+FPix2_neg+TEC1_neg', + 'FPix2_pos+TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC2_neg+TEC3_neg', + 'BPix2+BPix3+TIB1', + 'BPix2+BPix3+TIB2', + 'BPix1+BPix3+TIB1', + 'BPix1+BPix3+TIB2', + 'BPix1+BPix2+TIB1', + 'BPix1+BPix2+TIB2' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) +) +process.hltIter3PFlowMixedSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter3MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter2TrackAndTauJets4Iter3" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter3LayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter3PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter3PFlowMixedSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter3PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter3PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter3PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter3" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter3PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.85, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter3PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter3PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter3Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter2Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter3TrackRefsForJets4Iter4 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter3Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter3TrackJets4Iter4 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter3TrackRefsForJets4Iter4" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 4.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter3TrackAndTauJets4Iter4 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 4.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter3TrackJets4Iter4" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.0 ), + etaMaxCaloJet = cms.double( 2.0 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter3Merged" ) +) +process.hltIter4ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter3PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter3ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 70.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter4MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter4ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter4PixelLessLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'TIB1+TIB2+MTIB3', + 'TIB1+TIB2+MTID1_pos', + 'TIB1+TIB2+MTID1_neg', + 'TID1_pos+TID2_pos+TID3_pos', + 'TID1_neg+TID2_neg+TID3_neg', + 'TID1_pos+TID2_pos+MTID3_pos', + 'TID1_neg+TID2_neg+MTID3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ) + ), + MTID = cms.PSet( + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + FPix = cms.PSet( ), + MTEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + MTIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TID = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TOB = cms.PSet( ), + BPix = cms.PSet( ), + TIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ) +) +process.hltIter4PFlowPixelLessSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 1.0 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter4MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 12.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter3TrackAndTauJets4Iter4" ) + ), + RegionPsetFomBeamSpotBlockFixedZ = cms.PSet( + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originHalfLength = cms.double( 21.2 ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ) + ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "PixelClusterShapeSeedComparitor" ), + FilterAtHelixStage = cms.bool( True ), + FilterPixelHits = cms.bool( False ), + FilterStripHits = cms.bool( False ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ) + ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardMultiHitGenerator" ), + GeneratorPSet = cms.PSet( + ComponentName = cms.string( "MultiHitGeneratorFromChi2" ), + useFixedPreFiltering = cms.bool( False ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.0 ), + extraHitRZtolerance = cms.double( 0.0 ), + extraZKDBox = cms.double( 0.2 ), + extraRKDBox = cms.double( 0.2 ), + extraPhiKDBox = cms.double( 0.005 ), + fnSigmaRZ = cms.double( 2.0 ), + refitHits = cms.bool( True ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ), + maxChi2 = cms.double( 5.0 ), + chi2VsPtCut = cms.bool( True ), + pt_interv = cms.vdouble( 0.4, 0.7, 1.0, 2.0 ), + chi2_cuts = cms.vdouble( 3.0, 4.0, 5.0, 5.0 ), + debug = cms.bool( False ), + detIdsToDebug = cms.vint32( 0, 0, 0 ), + maxElement = cms.uint32( 100000 ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + SeedingLayers = cms.InputTag( "hltIter4PixelLessLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "WithTrackAngle" ) +) +process.hltIter4PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter4PFlowPixelLessSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter4PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter4PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter4PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter4" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter4PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.25 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 0 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter4PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter4Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltPFMuonMerging = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4Merged" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltMuonLinks = cms.EDProducer( "MuonLinksProducerForHLT", + pMin = cms.double( 2.5 ), + InclusiveTrackerTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + shareHitFraction = cms.double( 0.8 ), + LinkCollection = cms.InputTag( "hltL3MuonsLinksCombination" ), + ptMin = cms.double( 2.5 ) +) +process.hltMuons = cms.EDProducer( "MuonIdProducer", + TrackExtractorPSet = cms.PSet( + Diff_z = cms.double( 0.2 ), + inputTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + BeamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + ComponentName = cms.string( "TrackExtractor" ), + DR_Max = cms.double( 1.0 ), + Diff_r = cms.double( 0.1 ), + Chi2Prob_Min = cms.double( -1.0 ), + DR_Veto = cms.double( 0.01 ), + NHits_Min = cms.uint32( 0 ), + Chi2Ndof_Max = cms.double( 1.0E64 ), + Pt_Min = cms.double( -1.0 ), + DepositLabel = cms.untracked.string( "" ), + BeamlineOption = cms.string( "BeamSpotFromEvent" ) + ), + maxAbsEta = cms.double( 3.0 ), + fillGlobalTrackRefits = cms.bool( False ), + arbitrationCleanerOptions = cms.PSet( + Clustering = cms.bool( True ), + ME1a = cms.bool( True ), + ClusterDPhi = cms.double( 0.6 ), + OverlapDTheta = cms.double( 0.02 ), + Overlap = cms.bool( True ), + OverlapDPhi = cms.double( 0.0786 ), + ClusterDTheta = cms.double( 0.02 ) + ), + globalTrackQualityInputTag = cms.InputTag( "glbTrackQual" ), + addExtraSoftMuons = cms.bool( False ), + debugWithTruthMatching = cms.bool( False ), + CaloExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + DR_Max = cms.double( 1.0 ), + DepositInstanceLabels = cms.vstring( 'ecal', + 'hcal', + 'ho' ), + Noise_HE = cms.double( 0.2 ), + NoiseTow_EB = cms.double( 0.04 ), + NoiseTow_EE = cms.double( 0.15 ), + Threshold_H = cms.double( 0.5 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + Threshold_E = cms.double( 0.2 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + DepositLabel = cms.untracked.string( "Cal" ), + UseRecHitsFlag = cms.bool( False ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 1.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 1.0 ), + dREcalPreselection = cms.double( 1.0 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 1.0 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + Threshold_HO = cms.double( 0.5 ), + Noise_EE = cms.double( 0.1 ), + Noise_EB = cms.double( 0.025 ), + DR_Veto_H = cms.double( 0.1 ), + CenterConeOnCalIntersection = cms.bool( False ), + ComponentName = cms.string( "CaloExtractorByAssociator" ), + Noise_HB = cms.double( 0.2 ), + DR_Veto_E = cms.double( 0.07 ), + DR_Veto_HO = cms.double( 0.1 ), + Noise_HO = cms.double( 0.2 ) + ), + runArbitrationCleaner = cms.bool( False ), + fillEnergy = cms.bool( True ), + TrackerKinkFinderParameters = cms.PSet( + usePosition = cms.bool( False ), + diagonalOnly = cms.bool( False ) + ), + TimingFillerParameters = cms.PSet( + UseDT = cms.bool( True ), + ErrorDT = cms.double( 6.0 ), + EcalEnergyCut = cms.double( 0.4 ), + ErrorEB = cms.double( 2.085 ), + ErrorCSC = cms.double( 7.4 ), + CSCTimingParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + CSCTimeOffset = cms.double( 0.0 ), + CSCStripTimeOffset = cms.double( 0.0 ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + UseStripTime = cms.bool( True ), + CSCStripError = cms.double( 7.0 ), + CSCWireError = cms.double( 8.6 ), + CSCWireTimeOffset = cms.double( 0.0 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ), + PruneCut = cms.double( 100.0 ), + UseWireTime = cms.bool( True ) + ), + DTTimingParameters = cms.PSet( + HitError = cms.double( 6.0 ), + DoWireCorr = cms.bool( False ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + PruneCut = cms.double( 10000.0 ), + RequireBothProjections = cms.bool( False ), + HitsMin = cms.int32( 5 ), + DTTimeOffset = cms.double( 2.7 ), + DropTheta = cms.bool( True ), + UseSegmentT0 = cms.bool( False ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ) + ), + ErrorEE = cms.double( 6.95 ), + UseCSC = cms.bool( True ), + UseECAL = cms.bool( True ) + ), + inputCollectionTypes = cms.vstring( 'inner tracks', + 'links', + 'outer tracks' ), + minCaloCompatibility = cms.double( 0.6 ), + ecalDepositName = cms.string( "ecal" ), + minP = cms.double( 10.0 ), + fillIsolation = cms.bool( True ), + jetDepositName = cms.string( "jets" ), + hoDepositName = cms.string( "ho" ), + writeIsoDeposits = cms.bool( False ), + maxAbsPullX = cms.double( 4.0 ), + maxAbsPullY = cms.double( 9999.0 ), + minPt = cms.double( 10.0 ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 9999.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( True ), + dREcal = cms.double( 9999.0 ), + dREcalPreselection = cms.double( 0.05 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( True ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.2 ), + useMuon = cms.bool( True ), + useCalo = cms.bool( False ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( True ) + ), + JetExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + ExcludeMuonVeto = cms.bool( True ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 0.5 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 0.5 ), + dREcalPreselection = cms.double( 0.5 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.5 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + ComponentName = cms.string( "JetExtractor" ), + DR_Max = cms.double( 1.0 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + JetCollectionLabel = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + DR_Veto = cms.double( 0.1 ), + Threshold = cms.double( 5.0 ) + ), + fillGlobalTrackQuality = cms.bool( False ), + minPCaloMuon = cms.double( 1.0E9 ), + maxAbsDy = cms.double( 9999.0 ), + fillCaloCompatibility = cms.bool( True ), + fillMatching = cms.bool( True ), + MuonCaloCompatibility = cms.PSet( + allSiPMHO = cms.bool( False ), + PionTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_pions_lowPt_3_1_norm.root" ), + MuonTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_muons_lowPt_3_1_norm.root" ), + delta_eta = cms.double( 0.02 ), + delta_phi = cms.double( 0.02 ) + ), + fillTrackerKink = cms.bool( False ), + hcalDepositName = cms.string( "hcal" ), + sigmaThresholdToFillCandidateP4WithGlobalFit = cms.double( 2.0 ), + inputCollectionLabels = cms.VInputTag( 'hltPFMuonMerging','hltMuonLinks','hltL2Muons' ), + trackDepositName = cms.string( "tracker" ), + maxAbsDx = cms.double( 3.0 ), + ptThresholdToFillCandidateP4WithGlobalFit = cms.double( 200.0 ), + minNumberOfMatches = cms.int32( 1 ) +) +process.hltParticleFlowRecHitECALUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +process.hltParticleFlowRecHitHCAL = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltTowerMakerForPF" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +process.hltParticleFlowRecHitPSUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +process.hltParticleFlowClusterECALUncorrectedUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALUnseeded" ) +) +process.hltParticleFlowClusterPSUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSUnseeded" ) +) +process.hltParticleFlowClusterECALUnseeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedUnseeded" ) +) +process.hltParticleFlowClusterHCAL = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCAL" ) +) +process.hltParticleFlowClusterHFEM = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_EM" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_EM" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.19 ), + singleSpikeThresh = cms.double( 80.0 ), + detector = cms.string( "HF_EM" ), + minS4S1_a = cms.double( 0.11 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_EM" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFEM' ) +) +process.hltParticleFlowClusterHFHAD = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_HAD" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_HAD" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.08 ), + singleSpikeThresh = cms.double( 120.0 ), + detector = cms.string( "HF_HAD" ), + minS4S1_a = cms.double( 0.045 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_HAD" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFHAD' ) +) +process.hltLightPFTracks = cms.EDProducer( "LightPFTrackProducer", + TrackQuality = cms.string( "none" ), + UseQuality = cms.bool( False ), + TkColList = cms.VInputTag( 'hltPFMuonMerging' ) +) +process.hltParticleFlowBlock = cms.EDProducer( "PFBlockProducer", + debug = cms.untracked.bool( False ), + linkDefinitions = cms.VPSet( + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS1:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS2:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:ECAL" ), + linkerName = cms.string( "TrackAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:HCAL" ), + linkerName = cms.string( "TrackAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "ECAL:HCAL" ), + linkerName = cms.string( "ECALAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "HFEM:HFHAD" ), + linkerName = cms.string( "HFEMAndHFHADLinker" ) + ) + ), + elementImporters = cms.VPSet( + cms.PSet( importerName = cms.string( "GeneralTracksImporter" ), + useIterativeTracking = cms.bool( False ), + source = cms.InputTag( "hltLightPFTracks" ), + NHitCuts_byTrackAlgo = cms.vuint32( 3, 3, 3, 3, 3 ), + muonSrc = cms.InputTag( "hltMuons" ), + DPtOverPtCuts_byTrackAlgo = cms.vdouble( 0.5, 0.5, 0.5, 0.5, 0.5 ) + ), + cms.PSet( importerName = cms.string( "ECALClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterECALUnseeded" ), + BCtoPFCMap = cms.InputTag( "" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHCAL" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFEM" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFHAD" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ) + ) + ), + verbose = cms.untracked.bool( False ) +) +process.hltParticleFlow = cms.EDProducer( "PFProducer", + photon_SigmaiEtaiEta_endcap = cms.double( 0.034 ), + minPtForPostCleaning = cms.double( 20.0 ), + pf_nsigma_ECAL = cms.double( 0.0 ), + GedPhotonValueMap = cms.InputTag( 'tmpGedPhotons','valMapPFEgammaCandToPhoton' ), + sumPtTrackIsoForPhoton = cms.double( -1.0 ), + metFactorForFakes = cms.double( 4.0 ), + muon_HO = cms.vdouble( 0.9, 0.9 ), + electron_missinghits = cms.uint32( 1 ), + metSignificanceForCleaning = cms.double( 3.0 ), + usePFPhotons = cms.bool( False ), + dptRel_DispVtx = cms.double( 10.0 ), + nTrackIsoForEgammaSC = cms.uint32( 2 ), + pf_nsigma_HCAL = cms.double( 1.0 ), + cosmicRejectionDistance = cms.double( 1.0 ), + useEGammaFilters = cms.bool( False ), + useEGammaElectrons = cms.bool( False ), + nsigma_TRACK = cms.double( 1.0 ), + useEGammaSupercluster = cms.bool( False ), + sumPtTrackIsoForEgammaSC_barrel = cms.double( 4.0 ), + eventFractionForCleaning = cms.double( 0.8 ), + usePFDecays = cms.bool( False ), + rejectTracks_Step45 = cms.bool( False ), + eventFractionForRejection = cms.double( 0.8 ), + photon_MinEt = cms.double( 10.0 ), + usePFNuclearInteractions = cms.bool( False ), + maxSignificance = cms.double( 2.5 ), + electron_iso_mva_endcap = cms.double( -0.1075 ), + debug = cms.untracked.bool( False ), + pf_convID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_pfConversionAug0411.txt" ), + calibHF_eta_step = cms.vdouble( 0.0, 2.9, 3.0, 3.2, 4.2, 4.4, 4.6, 4.8, 5.2, 5.4 ), + ptErrorScale = cms.double( 8.0 ), + minSignificance = cms.double( 2.5 ), + minMomentumForPunchThrough = cms.double( 100.0 ), + pf_conv_mvaCut = cms.double( 0.0 ), + useCalibrationsFromDB = cms.bool( True ), + usePFElectrons = cms.bool( False ), + electron_iso_combIso_endcap = cms.double( 10.0 ), + photon_combIso = cms.double( 10.0 ), + electron_iso_mva_barrel = cms.double( -0.1875 ), + postHFCleaning = cms.bool( False ), + factors_45 = cms.vdouble( 10.0, 100.0 ), + cleanedHF = cms.VInputTag( 'hltParticleFlowRecHitHCAL:Cleaned','hltParticleFlowClusterHFHAD:Cleaned','hltParticleFlowClusterHFEM:Cleaned' ), + coneEcalIsoForEgammaSC = cms.double( 0.3 ), + minSignificanceReduction = cms.double( 1.4 ), + photon_SigmaiEtaiEta_barrel = cms.double( 0.0125 ), + calibHF_b_HADonly = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + minPixelHits = cms.int32( 1 ), + maxDPtOPt = cms.double( 1.0 ), + useHO = cms.bool( False ), + pf_electron_output_col = cms.string( "electrons" ), + electron_noniso_mvaCut = cms.double( -0.1 ), + GedElectronValueMap = cms.InputTag( "gedGsfElectronsTmp" ), + useVerticesForNeutral = cms.bool( True ), + pf_Res_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFRes.root" ), + PFEGammaCandidates = cms.InputTag( "particleFlowEGamma" ), + sumPtTrackIsoSlopeForPhoton = cms.double( -1.0 ), + coneTrackIsoForEgammaSC = cms.double( 0.3 ), + minDeltaMet = cms.double( 0.4 ), + pt_Error = cms.double( 1.0 ), + useProtectionsForJetMET = cms.bool( True ), + metFactorForRejection = cms.double( 4.0 ), + sumPtTrackIsoForEgammaSC_endcap = cms.double( 4.0 ), + calibHF_use = cms.bool( False ), + verbose = cms.untracked.bool( False ), + usePFConversions = cms.bool( False ), + trackQuality = cms.string( "highPurity" ), + calibPFSCEle_endcap = cms.vdouble( 1.153, -16.5975, 5.668, -0.1772, 16.22, 7.326, 0.0483, -4.068, 9.406 ), + metFactorForCleaning = cms.double( 4.0 ), + eventFactorForCosmics = cms.double( 10.0 ), + egammaElectrons = cms.InputTag( "" ), + minEnergyForPunchThrough = cms.double( 100.0 ), + minTrackerHits = cms.int32( 8 ), + iCfgCandConnector = cms.PSet( + bCalibSecondary = cms.bool( False ), + bCalibPrimary = cms.bool( False ), + bCorrect = cms.bool( False ), + nuclCalibFactors = cms.vdouble( 0.8, 0.15, 0.5, 0.5, 0.05 ) + ), + rejectTracks_Bad = cms.bool( False ), + pf_electronID_crackCorrection = cms.bool( False ), + pf_locC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFClusterCorr.root" ), + calibHF_a_EMonly = cms.vdouble( 0.96945, 0.96701, 0.76309, 0.82268, 0.87583, 0.89718, 0.98674, 1.4681, 1.458, 1.458 ), + muons = cms.InputTag( "hltMuons" ), + metFactorForHighEta = cms.double( 25.0 ), + minHFCleaningPt = cms.double( 5.0 ), + muon_HCAL = cms.vdouble( 3.0, 3.0 ), + pf_electron_mvaCut = cms.double( -0.1 ), + ptFactorForHighEta = cms.double( 2.0 ), + maxDeltaPhiPt = cms.double( 7.0 ), + pf_electronID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_PfElectrons23Jan_IntToFloat.txt" ), + sumEtEcalIsoForEgammaSC_endcap = cms.double( 2.0 ), + calibHF_b_EMHAD = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + pf_GlobC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFGlobalCorr.root" ), + photon_HoE = cms.double( 0.1 ), + sumEtEcalIsoForEgammaSC_barrel = cms.double( 1.0 ), + calibPFSCEle_Fbrem_endcap = cms.vdouble( 0.9, 6.5, -0.0692932, 0.101776, 0.995338, -0.00236548, 0.874998, 1.653, -0.0750184, 0.147, 0.923165, 4.74665E-4, 1.10782 ), + punchThroughFactor = cms.double( 3.0 ), + algoType = cms.uint32( 0 ), + electron_iso_combIso_barrel = cms.double( 10.0 ), + postMuonCleaning = cms.bool( True ), + calibPFSCEle_barrel = cms.vdouble( 1.004, -1.536, 22.88, -1.467, 0.3555, 0.6227, 14.65, 2051.0, 25.0, 0.9932, -0.5444, 0.0, 0.5438, 0.7109, 7.645, 0.2904, 0.0 ), + electron_protectionsForJetMET = cms.PSet( + maxE = cms.double( 50.0 ), + maxTrackPOverEele = cms.double( 1.0 ), + maxEcalEOverP_2 = cms.double( 0.2 ), + maxHcalEOverEcalE = cms.double( 0.1 ), + maxEcalEOverP_1 = cms.double( 0.5 ), + maxHcalEOverP = cms.double( 1.0 ), + maxEcalEOverPRes = cms.double( 0.2 ), + maxHcalE = cms.double( 10.0 ), + maxEeleOverPout = cms.double( 0.2 ), + maxNtracks = cms.double( 3.0 ), + maxEleHcalEOverEcalE = cms.double( 0.1 ), + maxDPhiIN = cms.double( 0.1 ), + maxEeleOverPoutRes = cms.double( 0.5 ) + ), + electron_iso_pt = cms.double( 10.0 ), + isolatedElectronID_mvaWeightFile = cms.string( "RecoEgamma/ElectronIdentification/data/TMVA_BDTSimpleCat_17Feb2011.weights.xml" ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + X0_Map = cms.string( "RecoParticleFlow/PFProducer/data/allX0histos.root" ), + calibPFSCEle_Fbrem_barrel = cms.vdouble( 0.6, 6.0, -0.0255975, 0.0576727, 0.975442, -5.46394E-4, 1.26147, 25.0, -0.02025, 0.04537, 0.9728, -8.962E-4, 1.172 ), + blocks = cms.InputTag( "hltParticleFlowBlock" ), + punchThroughMETFactor = cms.double( 4.0 ), + metSignificanceForRejection = cms.double( 4.0 ), + photon_protectionsForJetMET = cms.PSet( + sumPtTrackIsoSlope = cms.double( 0.001 ), + sumPtTrackIso = cms.double( 2.0 ) + ), + usePhotonReg = cms.bool( False ), + dzPV = cms.double( 0.2 ), + calibHF_a_EMHAD = cms.vdouble( 1.42215, 1.00496, 0.68961, 0.81656, 0.98504, 0.98504, 1.00802, 1.0593, 1.4576, 1.4576 ), + useRegressionFromDB = cms.bool( False ), + muon_ECAL = cms.vdouble( 0.5, 0.5 ), + usePFSCEleCalib = cms.bool( True ) +) +process.hltAK4PFJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "PFJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltParticleFlow" ), + inputEtMin = cms.double( 0.0 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 0.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), MaxVtxZ = cms.double( 15.0 ), UseOnlyVertexTracks = cms.bool( False ), dRMin = cms.double( -1.0 ), @@ -5332,33 +8779,34 @@ DxyTrVtxMax = cms.double( 0.0 ), useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) ) -process.hltAK4CaloJetsIDPassed = cms.EDProducer( "HLTCaloJetIDProducer", - min_N90 = cms.int32( -2 ), - min_N90hits = cms.int32( 2 ), - min_EMF = cms.double( 1.0E-6 ), - jetsInput = cms.InputTag( "hltAK4CaloJets" ), - JetIDParams = cms.PSet( - useRecHits = cms.bool( True ), - hbheRecHitsColl = cms.InputTag( "hltHbhereco" ), - hoRecHitsColl = cms.InputTag( "hltHoreco" ), - hfRecHitsColl = cms.InputTag( "hltHfreco" ), - ebRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), - eeRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) - ), - max_EMF = cms.double( 999.0 ) -) -process.hltFixedGridRhoFastjetAllCalo = cms.EDProducer( "FixedGridRhoProducerFastjet", +process.hltFixedGridRhoFastjetAll = cms.EDProducer( "FixedGridRhoProducerFastjet", gridSpacing = cms.double( 0.55 ), maxRapidity = cms.double( 5.0 ), - pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) + pfCandidatesTag = cms.InputTag( "hltParticleFlow" ) ) -process.hltAK4CaloJetsCorrected = cms.EDProducer( "CaloJetCorrectionProducer", - src = cms.InputTag( "hltAK4CaloJets" ), - correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +process.hltAK4PFJetsCorrected = cms.EDProducer( "PFJetCorrectionProducer", + src = cms.InputTag( "hltAK4PFJets" ), + correctors = cms.vstring( 'hltESPAK4PFCorrection' ) ) -process.hltAK4CaloJetsCorrectedIDPassed = cms.EDProducer( "CaloJetCorrectionProducer", - src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), - correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +process.hltPFJetsCorrectedMatchedToCaloJets200 = cms.EDProducer( "PFJetsMatchedToFilteredCaloJetsProducer", + DeltaR = cms.double( 0.5 ), + CaloJetFilter = cms.InputTag( "hltSingleCaloJet200" ), + TriggerType = cms.int32( 85 ), + PFJetSrc = cms.InputTag( "hltAK4PFJetsCorrected" ) +) +process.hltSinglePFJet260 = cms.EDFilter( "HLT1PFJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltPFJetsCorrectedMatchedToCaloJets200" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +process.hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) ) process.hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", saveTags = cms.bool( True ), @@ -5427,7 +8875,9 @@ dataTier = cms.untracked.string( "RAW" ) ), SelectEvents = cms.untracked.PSet( SelectEvents = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ), outputCommands = cms.untracked.vstring( 'drop *', @@ -5455,6 +8905,15 @@ process.HLTDoLocalHcalWithTowerSequence = cms.Sequence( process.hltHcalDigis + process.hltHbhereco + process.hltHfreco + process.hltHoreco + process.hltTowerMakerForAll ) process.HLTFastJetForEgamma = cms.Sequence( process.hltFixedGridRhoFastjetAllCaloForMuons ) process.HLTPFHcalClusteringForEgamma = cms.Sequence( process.hltRegionalTowerForEgamma + process.hltParticleFlowRecHitHCALForEgamma + process.hltParticleFlowClusterHCALForEgamma ) +process.HLTGsfElectronSequence = cms.Sequence( process.hltEgammaCkfTrackCandidatesForGSF + process.hltEgammaGsfTracks + process.hltEgammaGsfElectrons + process.hltEgammaGsfTrackVars ) +process.HLTRecoPixelVertexingForElectronSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracksElectrons + process.hltPixelVerticesElectrons ) +process.HLTPixelTrackingForElectron = cms.Sequence( process.hltElectronsVertex + process.HLTDoLocalPixelSequence + process.HLTRecoPixelVertexingForElectronSequence ) +process.HLTIterativeTrackingForElectronsIteration0 = cms.Sequence( process.hltIter0ElectronsPixelSeedsFromPixelTracks + process.hltIter0ElectronsCkfTrackCandidates + process.hltIter0ElectronsCtfWithMaterialTracks + process.hltIter0ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronsIteration1 = cms.Sequence( process.hltIter1ElectronsClustersRefRemoval + process.hltIter1ElectronsMaskedMeasurementTrackerEvent + process.hltIter1ElectronsPixelLayerTriplets + process.hltIter1ElectronsPixelSeeds + process.hltIter1ElectronsCkfTrackCandidates + process.hltIter1ElectronsCtfWithMaterialTracks + process.hltIter1ElectronsTrackSelectionHighPurityLoose + process.hltIter1ElectronsTrackSelectionHighPurityTight + process.hltIter1ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronsIteration2 = cms.Sequence( process.hltIter2ElectronsClustersRefRemoval + process.hltIter2ElectronsMaskedMeasurementTrackerEvent + process.hltIter2ElectronsPixelLayerPairs + process.hltIter2ElectronsPixelSeeds + process.hltIter2ElectronsCkfTrackCandidates + process.hltIter2ElectronsCtfWithMaterialTracks + process.hltIter2ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronIter02 = cms.Sequence( process.HLTIterativeTrackingForElectronsIteration0 + process.HLTIterativeTrackingForElectronsIteration1 + process.hltIter1MergedForElectrons + process.HLTIterativeTrackingForElectronsIteration2 + process.hltIter2MergedForElectrons ) +process.HLTTrackReconstructionForIsoElectronIter02 = cms.Sequence( process.HLTPixelTrackingForElectron + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingForElectronIter02 ) +process.HLTEle27WP80GsfSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1SingleEG20ORL1SingleEG22Filter + process.hltEG27EtFilter + process.hltEgammaClusterShape + process.hltEle27WP80ClusterShapeFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltEle27WP80HEFilter + process.hltEgammaEcalPFClusterIso + process.hltEle27WP80EcalIsoFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltEle27WP80HcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltEle27WP80PixelMatchFilter + process.HLTGsfElectronSequence + process.hltEle27WP80GsfOneOEMinusOneOPFilter + process.hltEle27WP80GsfDetaFilter + process.hltEle27WP80GsfDphiFilter + process.HLTTrackReconstructionForIsoElectronIter02 + process.hltEgammaEleGsfTrackIso + process.hltEle27WP80GsfTrackIsoFilter ) process.HLTRecoPixelVertexingForPhotonsSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracks + process.hltPixelVerticesForPhotons ) process.HLTIterativeTrackingForPhotonsIteration0 = cms.Sequence( process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons + process.hltIter0PFlowCkfTrackCandidatesForPhotons + process.hltIter0PFlowCtfWithMaterialTracksForPhotons + process.hltIter0PFlowTrackSelectionHighPurityForPhotons ) process.HLTIterativeTrackingForPhotonsIteration1 = cms.Sequence( process.hltIter1ClustersRefRemovalForPhotons + process.hltIter1MaskedMeasurementTrackerEventForPhotons + process.hltIter1PixelLayerTripletsForPhotons + process.hltIter1PFlowPixelSeedsForPhotons + process.hltIter1PFlowCkfTrackCandidatesForPhotons + process.hltIter1PFlowCtfWithMaterialTracksForPhotons + process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons + process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons + process.hltIter1PFlowTrackSelectionHighPurityForPhotons ) @@ -5468,10 +8927,32 @@ process.HLTAK4CaloJetsReconstructionSequence = cms.Sequence( process.HLTDoCaloSequence + process.hltAK4CaloJets + process.hltAK4CaloJetsIDPassed ) process.HLTAK4CaloJetsCorrectionSequence = cms.Sequence( process.hltFixedGridRhoFastjetAllCalo + process.hltAK4CaloJetsCorrected + process.hltAK4CaloJetsCorrectedIDPassed ) process.HLTAK4CaloJetsSequence = cms.Sequence( process.HLTAK4CaloJetsReconstructionSequence + process.HLTAK4CaloJetsCorrectionSequence ) +process.HLTDoCaloSequencePF = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + process.HLTDoLocalHcalSequence + process.hltTowerMakerForPF ) +process.HLTAK4CaloJetsPrePFRecoSequence = cms.Sequence( process.HLTDoCaloSequencePF + process.hltAK4CaloJetsPF ) +process.HLTPreAK4PFJetsRecoSequence = cms.Sequence( process.HLTAK4CaloJetsPrePFRecoSequence + process.hltAK4CaloJetsPFEt5 ) +process.HLTRecopixelvertexingSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracks + process.hltPixelVertices ) +process.HLTIterativeTrackingIteration0 = cms.Sequence( process.hltIter0PFLowPixelSeedsFromPixelTracks + process.hltIter0PFlowCkfTrackCandidates + process.hltIter0PFlowCtfWithMaterialTracks + process.hltIter0PFlowTrackSelectionHighPurity ) +process.HLTIter0TrackAndTauJet4Iter1Sequence = cms.Sequence( process.hltTrackIter0RefsForJets4Iter1 + process.hltAK4Iter0TrackJets4Iter1 + process.hltIter0TrackAndTauJets4Iter1 ) +process.HLTIterativeTrackingIteration1 = cms.Sequence( process.hltIter1ClustersRefRemoval + process.hltIter1MaskedMeasurementTrackerEvent + process.hltIter1PixelLayerTriplets + process.hltIter1PFlowPixelSeeds + process.hltIter1PFlowCkfTrackCandidates + process.hltIter1PFlowCtfWithMaterialTracks + process.hltIter1PFlowTrackSelectionHighPurityLoose + process.hltIter1PFlowTrackSelectionHighPurityTight + process.hltIter1PFlowTrackSelectionHighPurity ) +process.HLTIter1TrackAndTauJets4Iter2Sequence = cms.Sequence( process.hltIter1TrackRefsForJets4Iter2 + process.hltAK4Iter1TrackJets4Iter2 + process.hltIter1TrackAndTauJets4Iter2 ) +process.HLTIterativeTrackingIteration2 = cms.Sequence( process.hltIter2ClustersRefRemoval + process.hltIter2MaskedMeasurementTrackerEvent + process.hltIter2PixelLayerPairs + process.hltIter2PFlowPixelSeeds + process.hltIter2PFlowCkfTrackCandidates + process.hltIter2PFlowCtfWithMaterialTracks + process.hltIter2PFlowTrackSelectionHighPurity ) +process.HLTIter2TrackAndTauJets4Iter3Sequence = cms.Sequence( process.hltIter2TrackRefsForJets4Iter3 + process.hltAK4Iter2TrackJets4Iter3 + process.hltIter2TrackAndTauJets4Iter3 ) +process.HLTIterativeTrackingIteration3 = cms.Sequence( process.hltIter3ClustersRefRemoval + process.hltIter3MaskedMeasurementTrackerEvent + process.hltIter3LayerTriplets + process.hltIter3PFlowMixedSeeds + process.hltIter3PFlowCkfTrackCandidates + process.hltIter3PFlowCtfWithMaterialTracks + process.hltIter3PFlowTrackSelectionHighPurityLoose + process.hltIter3PFlowTrackSelectionHighPurityTight + process.hltIter3PFlowTrackSelectionHighPurity ) +process.HLTIter3TrackAndTauJets4Iter4Sequence = cms.Sequence( process.hltIter3TrackRefsForJets4Iter4 + process.hltAK4Iter3TrackJets4Iter4 + process.hltIter3TrackAndTauJets4Iter4 ) +process.HLTIterativeTrackingIteration4 = cms.Sequence( process.hltIter4ClustersRefRemoval + process.hltIter4MaskedMeasurementTrackerEvent + process.hltIter4PixelLessLayerTriplets + process.hltIter4PFlowPixelLessSeeds + process.hltIter4PFlowCkfTrackCandidates + process.hltIter4PFlowCtfWithMaterialTracks + process.hltIter4PFlowTrackSelectionHighPurity ) +process.HLTIterativeTrackingIter04 = cms.Sequence( process.HLTIterativeTrackingIteration0 + process.HLTIter0TrackAndTauJet4Iter1Sequence + process.HLTIterativeTrackingIteration1 + process.hltIter1Merged + process.HLTIter1TrackAndTauJets4Iter2Sequence + process.HLTIterativeTrackingIteration2 + process.hltIter2Merged + process.HLTIter2TrackAndTauJets4Iter3Sequence + process.HLTIterativeTrackingIteration3 + process.hltIter3Merged + process.HLTIter3TrackAndTauJets4Iter4Sequence + process.HLTIterativeTrackingIteration4 + process.hltIter4Merged ) +process.HLTTrackReconstructionForPF = cms.Sequence( process.HLTDoLocalPixelSequence + process.HLTRecopixelvertexingSequence + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingIter04 + process.hltPFMuonMerging + process.hltMuonLinks + process.hltMuons ) +process.HLTPreshowerSequence = cms.Sequence( process.hltEcalPreshowerDigis + process.hltEcalPreshowerRecHit ) +process.HLTParticleFlowSequence = cms.Sequence( process.HLTPreshowerSequence + process.hltParticleFlowRecHitECALUnseeded + process.hltParticleFlowRecHitHCAL + process.hltParticleFlowRecHitPSUnseeded + process.hltParticleFlowClusterECALUncorrectedUnseeded + process.hltParticleFlowClusterPSUnseeded + process.hltParticleFlowClusterECALUnseeded + process.hltParticleFlowClusterHCAL + process.hltParticleFlowClusterHFEM + process.hltParticleFlowClusterHFHAD + process.hltLightPFTracks + process.hltParticleFlowBlock + process.hltParticleFlow ) +process.HLTAK4PFJetsReconstructionSequence = cms.Sequence( process.HLTL2muonrecoSequence + process.HLTL3muonrecoSequence + process.HLTTrackReconstructionForPF + process.HLTParticleFlowSequence + process.hltAK4PFJets ) +process.HLTAK4PFJetsCorrectionSequence = cms.Sequence( process.hltFixedGridRhoFastjetAll + process.hltAK4PFJetsCorrected ) +process.HLTAK4PFJetsSequence = cms.Sequence( process.HLTPreAK4PFJetsRecoSequence + process.HLTAK4PFJetsReconstructionSequence + process.HLTAK4PFJetsCorrectionSequence ) process.HLTriggerFirstPath = cms.Path( process.hltGetConditions + process.hltGetRaw + process.hltBoolFalse ) process.HLT_Mu40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sMu16 + process.hltPreMu40 + process.hltL1fL1sMu16L1Filtered0 + process.HLTL2muonrecoSequence + process.hltL2fL1sMu16L1f0L2Filtered16Q + process.HLTL3muonrecoSequence + process.hltL3fL1sMu16L1f0L2f16QL3Filtered40Q + process.HLTEndSequence ) +process.HLT_Ele27_WP80_Gsf_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG20ORL1SingleEG22 + process.hltPreEle27WP80Gsf + process.HLTEle27WP80GsfSequence + process.HLTEndSequence ) process.HLT_Photon20_CaloIdVL_IsoL_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG12 + process.hltPrePhoton20CaloIdVLIsoL + process.HLTPhoton20CaloIdVLIsoLSequence + process.HLTEndSequence ) +process.HLT_PFJet260_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleJet128 + process.hltPrePFJet260 + process.HLTAK4CaloJetsSequence + process.hltSingleCaloJet200 + process.HLTAK4PFJetsSequence + process.hltPFJetsCorrectedMatchedToCaloJets200 + process.hltSinglePFJet260 + process.HLTEndSequence ) process.HLT_CaloJet260_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleJet128 + process.hltPreCaloJet260 + process.HLTAK4CaloJetsSequence + process.hltSingleCaloJet260 + process.HLTEndSequence ) process.HLT_Physics_v1 = cms.Path( process.HLTBeginSequence + process.hltPrePhysics + process.HLTEndSequence ) process.HLTriggerFinalPath = cms.Path( process.hltGtDigis + process.hltScalersRawToDigi + process.hltFEDSelector + process.hltTriggerSummaryAOD + process.hltTriggerSummaryRAW ) @@ -5545,7 +9026,7 @@ # override the GlobalTag, connection string and pfnPrefix if 'GlobalTag' in process.__dict__: from Configuration.AlCa.GlobalTag_condDBv2 import GlobalTag as customiseGlobalTag - process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:hltonline_PIon', conditions = 'L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2013_v0_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') + process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:hltonline_PIon', conditions = 'L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') process.GlobalTag.connect = 'frontier://FrontierProd/CMS_CONDITIONS' process.GlobalTag.pfnPrefix = cms.untracked.string('frontier://FrontierProd/') for pset in process.GlobalTag.toGet.value(): diff --git a/HLTrigger/Configuration/test/OnLine_HLT_2014.py b/HLTrigger/Configuration/test/OnLine_HLT_2014.py index d285e75d75907..7487c71ab9d2c 100644 --- a/HLTrigger/Configuration/test/OnLine_HLT_2014.py +++ b/HLTrigger/Configuration/test/OnLine_HLT_2014.py @@ -54921,10 +54921,6 @@ ) ) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in process.__dict__: - process.hltHfreco.setNoiseFlags = cms.bool( True ) - # customise the HLT menu for running on MC from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC process = customizeHLTforMC(process) diff --git a/HLTrigger/Configuration/test/OnLine_HLT_FULL.py b/HLTrigger/Configuration/test/OnLine_HLT_FULL.py index 0ac0323a74fc6..cb5b2d96990a9 100644 --- a/HLTrigger/Configuration/test/OnLine_HLT_FULL.py +++ b/HLTrigger/Configuration/test/OnLine_HLT_FULL.py @@ -27150,10 +27150,6 @@ ) ) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in process.__dict__: - process.hltHfreco.setNoiseFlags = cms.bool( True ) - # customise the HLT menu for running on MC from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC process = customizeHLTforMC(process) diff --git a/HLTrigger/Configuration/test/OnLine_HLT_GRun.py b/HLTrigger/Configuration/test/OnLine_HLT_GRun.py index 0c9804aaf2264..4b20098428be2 100644 --- a/HLTrigger/Configuration/test/OnLine_HLT_GRun.py +++ b/HLTrigger/Configuration/test/OnLine_HLT_GRun.py @@ -1,11 +1,11 @@ -# /dev/CMSSW_7_1_1/GRun/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/GRun/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms process = cms.Process( "HLTGRun" ) process.HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/GRun/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/GRun/V87') ) process.HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -499,8 +499,28 @@ 'HLT_PFJet40_v1', 'HLT_PFMET180_NoiseCleaned_v1', 'HLT_PFchMET90_NoiseCleaned_v1', + 'HLT_Photon135_PFMET40_v1', + 'HLT_Photon135_VBF_v1', + 'HLT_Photon150_PFMET40_v1', + 'HLT_Photon150_VBF_v1', + 'HLT_Photon160_PFMET40_v1', + 'HLT_Photon160_VBF_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon250_NoHE_PFMET40_v1', + 'HLT_Photon250_NoHE_VBF_v1', 'HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1', + 'HLT_Photon300_NoHE_PFMET40_v1', + 'HLT_Photon300_NoHE_VBF_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1', 'HLT_Physics_v1', 'HLT_ReducedIterativeTracking_v1' ) ) @@ -24495,6 +24515,1078 @@ candTag = cms.InputTag( "hltMu8Ele23GsfDphiLegEle23GsfCaloIdTrackIdIsoMediumWPFilter" ), nonIsoTag = cms.InputTag( "" ) ) +process.hltPrePhoton22R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltHybridSuperClustersL1Seeded = cms.EDProducer( "EgammaHLTHybridClusterProducer", + xi = cms.double( 0.0 ), + regionEtaMargin = cms.double( 0.14 ), + regionPhiMargin = cms.double( 0.4 ), + severityRecHitThreshold = cms.double( 4.0 ), + RecHitFlagToBeExcluded = cms.vstring( ), + ecalhitcollection = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + eThreshA = cms.double( 0.003 ), + basicclusterCollection = cms.string( "" ), + eThreshB = cms.double( 0.1 ), + dynamicPhiRoad = cms.bool( False ), + useEtForXi = cms.bool( True ), + l1UpperThr = cms.double( 999.0 ), + excludeFlagged = cms.bool( True ), + posCalcParameters = cms.PSet( + T0_barl = cms.double( 7.4 ), + LogWeighted = cms.bool( True ), + T0_endc = cms.double( 3.1 ), + T0_endcPresh = cms.double( 1.2 ), + W0 = cms.double( 4.2 ), + X0 = cms.double( 0.89 ) + ), + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + eseed = cms.double( 0.35 ), + ethresh = cms.double( 0.1 ), + ewing = cms.double( 0.0 ), + RecHitSeverityToBeExcluded = cms.vstring( 'kWeird' ), + step = cms.int32( 17 ), + debugLevel = cms.string( "INFO" ), + dynamicEThresh = cms.bool( False ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ), + superclusterCollection = cms.string( "" ), + HybridBarrelSeedThr = cms.double( 1.5 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ) +) +process.hltCorrectedHybridSuperClustersL1Seeded = cms.EDProducer( "EgammaSCCorrectionMaker", + corectedSuperClusterCollection = cms.string( "" ), + sigmaElectronicNoise = cms.double( 0.03 ), + superClusterAlgo = cms.string( "Hybrid" ), + etThresh = cms.double( 1.0 ), + rawSuperClusterProducer = cms.InputTag( "hltHybridSuperClustersL1Seeded" ), + applyEnergyCorrection = cms.bool( True ), + isl_fCorrPset = cms.PSet( ), + VerbosityLevel = cms.string( "ERROR" ), + recHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + fix_fCorrPset = cms.PSet( ), + modeEE = cms.int32( 0 ), + modeEB = cms.int32( 0 ), + dyn_fCorrPset = cms.PSet( ), + energyCorrectorName = cms.string( "EcalClusterEnergyCorrectionObjectSpecific" ), + applyLocalContCorrection = cms.bool( False ), + localContCorrectorName = cms.string( "EcalBasicClusterLocalContCorrection" ), + crackCorrectorName = cms.string( "EcalClusterCrackCorrection" ), + applyCrackCorrection = cms.bool( False ), + hyb_fCorrPset = cms.PSet( + brLinearLowThr = cms.double( 1.1 ), + fBremVec = cms.vdouble( -0.05208, 0.1331, 0.9196, -5.735E-4, 1.343 ), + brLinearHighThr = cms.double( 8.0 ), + fEtEtaVec = cms.vdouble( 1.0012, -0.5714, 0.0, 0.0, 0.0, 0.5549, 12.74, 1.0448, 0.0, 0.0, 0.0, 0.0, 8.0, 1.023, -0.00181, 0.0, 0.0 ) + ) +) +process.hltMulti5x5BasicClustersL1Seeded = cms.EDProducer( "EgammaHLTMulti5x5ClusterProducer", + l1LowerThr = cms.double( 5.0 ), + Multi5x5BarrelSeedThr = cms.double( 0.5 ), + Multi5x5EndcapSeedThr = cms.double( 0.18 ), + endcapHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + barrelClusterCollection = cms.string( "notused" ), + regionEtaMargin = cms.double( 0.3 ), + regionPhiMargin = cms.double( 0.4 ), + RecHitFlagToBeExcluded = cms.vstring( ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + posCalcParameters = cms.PSet( + T0_barl = cms.double( 7.4 ), + LogWeighted = cms.bool( True ), + T0_endc = cms.double( 3.1 ), + T0_endcPresh = cms.double( 1.2 ), + W0 = cms.double( 4.2 ), + X0 = cms.double( 0.89 ) + ), + VerbosityLevel = cms.string( "ERROR" ), + doIsolated = cms.bool( True ), + barrelHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ), + doEndcaps = cms.bool( True ), + doBarrel = cms.bool( False ), + endcapClusterCollection = cms.string( "multi5x5EndcapBasicClusters" ), + l1UpperThr = cms.double( 999.0 ) +) +process.hltMulti5x5SuperClustersL1Seeded = cms.EDProducer( "Multi5x5SuperClusterProducer", + barrelSuperclusterCollection = cms.string( "multi5x5BarrelSuperClusters" ), + endcapEtaSearchRoad = cms.double( 0.14 ), + dynamicPhiRoad = cms.bool( False ), + endcapClusterTag = cms.InputTag( 'hltMulti5x5BasicClustersL1Seeded','multi5x5EndcapBasicClusters' ), + barrelPhiSearchRoad = cms.double( 0.8 ), + endcapPhiSearchRoad = cms.double( 0.6 ), + seedTransverseEnergyThreshold = cms.double( 1.0 ), + endcapSuperclusterCollection = cms.string( "multi5x5EndcapSuperClusters" ), + barrelEtaSearchRoad = cms.double( 0.06 ), + barrelClusterTag = cms.InputTag( 'hltMulti5x5BasicClustersL1Seeded','multi5x5BarrelBasicClusters' ), + doBarrel = cms.bool( False ), + doEndcaps = cms.bool( True ), + bremRecoveryPset = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( + a = cms.double( 47.85 ), + c = cms.double( 0.1201 ), + b = cms.double( 108.8 ) + ), + doEndcaps = cms.bool( True ), + doBarrel = cms.bool( False ) + ), + endcapClusterProducer = cms.string( "hltMulti5x5BasicClustersL1Seeded" ) +) +process.hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded = cms.EDProducer( "PreshowerClusterProducer", + assocSClusterCollection = cms.string( "" ), + preshStripEnergyCut = cms.double( 0.0 ), + preshClusterCollectionY = cms.string( "preshowerYClusters" ), + preshClusterCollectionX = cms.string( "preshowerXClusters" ), + etThresh = cms.double( 5.0 ), + preshRecHitProducer = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + endcapSClusterProducer = cms.InputTag( 'hltMulti5x5SuperClustersL1Seeded','multi5x5EndcapSuperClusters' ), + preshNclust = cms.int32( 4 ), + debugLevel = cms.string( "" ), + preshClusterEnergyCut = cms.double( 0.0 ), + preshSeededNstrip = cms.int32( 15 ) +) +process.hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded = cms.EDProducer( "EgammaSCCorrectionMaker", + corectedSuperClusterCollection = cms.string( "" ), + sigmaElectronicNoise = cms.double( 0.15 ), + superClusterAlgo = cms.string( "Multi5x5" ), + etThresh = cms.double( 1.0 ), + rawSuperClusterProducer = cms.InputTag( "hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded" ), + applyEnergyCorrection = cms.bool( True ), + isl_fCorrPset = cms.PSet( ), + VerbosityLevel = cms.string( "ERROR" ), + recHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + fix_fCorrPset = cms.PSet( + brLinearLowThr = cms.double( 0.6 ), + fBremVec = cms.vdouble( -0.04163, 0.08552, 0.95048, -0.002308, 1.077 ), + brLinearHighThr = cms.double( 6.0 ), + fEtEtaVec = cms.vdouble( 0.9746, -6.512, 0.0, 0.0, 0.02771, 4.983, 0.0, 0.0, -0.007288, -0.9446, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0 ) + ), + modeEE = cms.int32( 0 ), + modeEB = cms.int32( 0 ), + dyn_fCorrPset = cms.PSet( ), + energyCorrectorName = cms.string( "EcalClusterEnergyCorrectionObjectSpecific" ), + applyLocalContCorrection = cms.bool( False ), + localContCorrectorName = cms.string( "EcalBasicClusterLocalContCorrection" ), + crackCorrectorName = cms.string( "EcalClusterCrackCorrection" ), + applyCrackCorrection = cms.bool( False ), + hyb_fCorrPset = cms.PSet( ) +) +process.hltL1SeededRecoEcalCandidate = cms.EDProducer( "EgammaHLTRecoEcalCandidateProducers", + scIslandEndcapProducer = cms.InputTag( "hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded" ), + scHybridBarrelProducer = cms.InputTag( "hltCorrectedHybridSuperClustersL1Seeded" ), + recoEcalCandidateCollection = cms.string( "" ) +) +process.hltEGRegionalL1SingleEG22 = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG22" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 22.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltL1SeededPhotonHcalForHE = cms.EDProducer( "EgammaHLTHcalIsolationProducersRegional", + eMinHE = cms.double( 0.8 ), + hbheRecHitProducer = cms.InputTag( "hltHbhereco" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.14 ), + eMinHB = cms.double( 0.7 ), + innerCone = cms.double( 0.0 ), + etMinHE = cms.double( -1.0 ), + etMinHB = cms.double( -1.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( False ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1SeededR9ID = cms.EDProducer( "EgammaHLTR9IDProducer", + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + ecalRechitEB = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + ecalRechitEE = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1SeededPhotonEcalIso = cms.EDProducer( "EgammaHLTEcalRecIsolationProducer", + useNumCrystals = cms.bool( True ), + intRadiusEndcap = cms.double( 3.0 ), + etMinBarrel = cms.double( -9999.0 ), + effectiveAreaBarrel = cms.double( 0.101 ), + tryBoth = cms.bool( True ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + etMinEndcap = cms.double( 0.11 ), + eMinBarrel = cms.double( 0.095 ), + ecalEndcapRecHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + jurassicWidth = cms.double( 3.0 ), + intRadiusBarrel = cms.double( 3.0 ), + ecalBarrelRecHitProducer = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + extRadius = cms.double( 0.3 ), + doRhoCorrection = cms.bool( False ), + useIsolEt = cms.bool( True ), + eMinEndcap = cms.double( -9999.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + subtract = cms.bool( False ), + rhoScale = cms.double( 1.0 ), + effectiveAreaEndcap = cms.double( 0.046 ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1SeededPhotonHcalIso = cms.EDProducer( "EgammaHLTHcalIsolationProducersRegional", + eMinHE = cms.double( 0.8 ), + hbheRecHitProducer = cms.InputTag( "hltHbhereco" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.29 ), + eMinHB = cms.double( 0.7 ), + innerCone = cms.double( 0.16 ), + etMinHE = cms.double( -1.0 ), + etMinHB = cms.double( -1.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCalo" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( True ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1SeededEgammaRegionalPixelSeedGenerator = cms.EDProducer( "EgammaHLTRegionalPixelSeedGeneratorProducers", + deltaPhiRegion = cms.double( 0.3 ), + vertexZ = cms.double( 0.0 ), + originHalfLength = cms.double( 15.0 ), + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseZInVertex = cms.bool( False ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + SeedingLayers = cms.InputTag( "hltPixelLayerPairs" ) + ), + deltaEtaRegion = cms.double( 0.3 ), + ptMin = cms.double( 1.5 ), + candTagEle = cms.InputTag( "pixelMatchElectrons" ), + candTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + TTRHBuilder = cms.string( "WithTrackAngle" ), + originRadius = cms.double( 0.02 ) +) +process.hltL1SeededEgammaRegionalCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltL1SeededEgammaRegionalPixelSeedGenerator" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPCkfTrajectoryBuilder" ) +) +process.hltL1SeededEgammaRegionalCTFFinalFitWithMaterial = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL1SeededEgammaRegionalCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "hltEgammaRegionalCTFFinalFitWithMaterial" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( False ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +process.hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( True ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 100.0, 1.0 ), + applyAdaptedPVCuts = cms.bool( False ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 100.0, 1.0 ), + copyTrajectories = cms.untracked.bool( False ), + vtxNumber = cms.int32( 0 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( False ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( False ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltL1SeededEgammaRegionalCTFFinalFitWithMaterial" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "NONE" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 100.0, 1.0 ), + d0_par1 = cms.vdouble( 100.0, 1.0 ), + res_par = cms.vdouble( 1.0, 0.0 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltL1SeededPhotonHollowTrackIsoWithId = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +process.hltPhoton22R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPFMET40Filter = cms.EDFilter( "HLTMhtFilter", + saveTags = cms.bool( True ), + mhtLabels = cms.VInputTag( 'hltPFMETProducer' ), + minMht = cms.vdouble( 40.0 ) +) +process.hltPrePhoton36R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 36.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton36R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton50R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 50.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton50R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton75R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 75.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton75R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton90R9Id90HE10Iso40EBOnlyPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG22" ), + etcutEB = cms.double( 90.0 ), + etcutEE = cms.double( 999999.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.9 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.9 ), + lessThan = cms.bool( False ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededR9ID" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonEcalIso" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 0 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalIso" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPhoton90R9Id90HE10Iso40EBOnlyTrackIsoLastFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 4.0 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 4.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHollowTrackIsoWithId" ), + candTag = cms.InputTag( "hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1sL1SingleEG30 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG30" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPrePhoton135PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEGRegionalL1SingleEG30 = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG30" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltEG135EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 135.0 ), + etcutEE = cms.double( 135.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton135HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG135EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton150PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEG150EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 150.0 ), + etcutEE = cms.double( 150.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton150HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG150EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton160PFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEG160EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 160.0 ), + etcutEE = cms.double( 160.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPhoton160HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltL1SeededPhotonHcalForHE" ), + candTag = cms.InputTag( "hltEG160EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPrePhoton250NoHEPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEG250EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( True ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 250.0 ), + etcutEE = cms.double( 250.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPrePhoton300NoHEPFMET40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEG300EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( True ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltL1SeededRecoEcalCandidate" ), + inputTag = cms.InputTag( "hltEGRegionalL1SingleEG30" ), + etcutEB = cms.double( 300.0 ), + etcutEE = cms.double( 300.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltPrePhoton22R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltDiCaloJet20MJJ400AllJetsDEta3Filter = cms.EDFilter( "HLTCaloJetVBFFilter", + saveTags = cms.bool( True ), + minDeltaEta = cms.double( 3.0 ), + leadingJetOnly = cms.bool( False ), + maxEta = cms.double( 5.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrected" ), + etaOpposite = cms.bool( True ), + triggerType = cms.int32( 85 ), + minInvMass = cms.double( 400.0 ), + minPtHigh = cms.double( 20.0 ), + minPtLow = cms.double( 20.0 ) +) +process.hltPrePhoton36R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton50R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton75R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton90R9Id90HE10Iso40EBOnlyVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton135VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton150VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton160VBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton250NoHEVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltPrePhoton300NoHEVBF = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) process.hltPrePhysics = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) @@ -24598,8 +25690,28 @@ 'HLT_PFJet40_v1', 'HLT_PFMET180_NoiseCleaned_v1', 'HLT_PFchMET90_NoiseCleaned_v1', + 'HLT_Photon135_PFMET40_v1', + 'HLT_Photon135_VBF_v1', + 'HLT_Photon150_PFMET40_v1', + 'HLT_Photon150_VBF_v1', + 'HLT_Photon160_PFMET40_v1', + 'HLT_Photon160_VBF_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon250_NoHE_PFMET40_v1', + 'HLT_Photon250_NoHE_VBF_v1', 'HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v1', + 'HLT_Photon300_NoHE_PFMET40_v1', + 'HLT_Photon300_NoHE_VBF_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1', + 'HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1', 'HLT_Physics_v1', 'HLT_ReducedIterativeTracking_v1' ) ), outputCommands = cms.untracked.vstring( 'drop *', @@ -24770,6 +25882,21 @@ process.HLTEle17Ele12Ele10CaloIdTrackIdSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1EG12EG7EG5Filter + process.hltEle17Ele12Ele10CaloIdTrackIdEtLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdEtLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdEtLeg3Filter + process.hltEgammaClusterShape + process.hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdClusterShapeLeg3Filter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltEle17Ele12Ele10CaloIdTrackIdHELeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdHELeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdHELeg3Filter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdPixelMatchLeg3Filter + process.HLTGsfElectronSequence + process.hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdOneOEMinusOneOPLeg3Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDetaLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDetaLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDetaLeg3Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDphiLeg1Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDphiLeg2Filter + process.hltEle17Ele12Ele10CaloIdTrackIdDphiLeg3Filter ) process.HLTMu23Ele12_Gsf = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1Mu12EG7Filter + process.hltMu23Ele12EtLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.hltEgammaClusterShape + process.hltMu23Ele12ClusterShapeLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltMu23Ele12HELegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.hltEgammaEcalPFClusterIso + process.hltMu23Ele12EcalIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltMu23Ele12HcalIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltMu23Ele12PixelMatchLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTGsfElectronSequence + process.hltMu23Ele12GsfDetaLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.hltMu23Ele12GsfDphiLegEle12GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTTrackReconstructionForIsoElectronIter02 + process.hltEgammaEleGsfTrackIso + process.hltMu23Ele12GsfTrackIsoLegEle12GsfCaloIdTrackIdIsoMediumWPFilter ) process.HLTMu8Ele23_Gsf = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1Mu3p5EG12ORL1MuOpenEG12Filter + process.hltMu8Ele23EtLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.hltEgammaClusterShape + process.hltMu8Ele23ClusterShapeLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltMu8Ele23HELegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.hltEgammaEcalPFClusterIso + process.hltMu8Ele23EcalIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltMu8Ele23HcalIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltMu8Ele23PixelMatchLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTGsfElectronSequence + process.hltMu8Ele23GsfDetaLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.hltMu8Ele23GsfDphiLegEle23GsfCaloIdTrackIdIsoMediumWPFilter + process.HLTTrackReconstructionForIsoElectronIter02 + process.hltEgammaEleGsfTrackIso + process.hltMu8Ele23GsfTrackIsoLegEle23GsfCaloIdTrackIdIsoMediumWPFilter ) +process.HLTMulti5x5SuperClusterL1Seeded = cms.Sequence( process.hltMulti5x5BasicClustersL1Seeded + process.hltMulti5x5SuperClustersL1Seeded + process.hltMulti5x5EndcapSuperClustersWithPreshowerL1Seeded + process.hltCorrectedMulti5x5EndcapSuperClustersWithPreshowerL1Seeded ) +process.HLTL1SeededEcalClustersSequence = cms.Sequence( process.hltHybridSuperClustersL1Seeded + process.hltCorrectedHybridSuperClustersL1Seeded + process.HLTMulti5x5SuperClusterL1Seeded ) +process.HLTDoLocalHcalWithoutHOSequence = cms.Sequence( process.hltHcalDigis + process.hltHbhereco + process.hltHfreco ) +process.HLTL1SeededEgammaRegionalRecoTrackerSequence = cms.Sequence( process.hltPixelLayerPairs + process.hltL1SeededEgammaRegionalPixelSeedGenerator + process.hltL1SeededEgammaRegionalCkfTrackCandidates + process.hltL1SeededEgammaRegionalCTFFinalFitWithMaterial ) +process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId = cms.Sequence( process.HLTL1SeededEgammaRegionalRecoTrackerSequence + process.hltL1SeededEgammaRegionalAnalyticalTrackSelectorHighPurity ) +process.HLTPhoton22R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton22R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton22R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton22R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton22R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton22R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton22R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTPhoton36R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton36R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton36R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton36R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton36R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton36R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton36R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTPhoton50R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton50R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton50R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton50R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton50R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton50R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton50R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTPhoton75R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton75R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton75R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton75R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton75R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton75R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton75R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTPhoton90R9Id90HE10Iso40EBOnlySequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG22 + process.hltPhoton90R9Id90HE10Iso40EBOnlyEtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton90R9Id90HE10Iso40EBOnlyHEFilter + process.hltL1SeededR9ID + process.hltPhoton90R9Id90HE10Iso40EBOnlyR9Filter + process.hltL1SeededPhotonEcalIso + process.hltPhoton90R9Id90HE10Iso40EBOnlyEcalIsoFilter + process.hltL1SeededPhotonHcalIso + process.hltPhoton90R9Id90HE10Iso40EBOnlyHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTL1SeededEgammaRegionalRecoTrackerSequenceWithId + process.hltL1SeededPhotonHollowTrackIsoWithId + process.hltPhoton90R9Id90HE10Iso40EBOnlyTrackIsoLastFilter ) +process.HLTSinglePhoton135Sequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG135EtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton135HEFilter ) +process.HLTSinglePhoton150Sequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG150EtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton150HEFilter ) +process.HLTSinglePhoton160Sequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG160EtFilter + process.HLTDoLocalHcalWithoutHOSequence + process.hltL1SeededPhotonHcalForHE + process.hltPhoton160HEFilter ) +process.HLTSinglePhoton250NoHESequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG250EtFilter ) +process.HLTSinglePhoton300NoHESequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTL1SeededEcalClustersSequence + process.hltL1SeededRecoEcalCandidate + process.hltEGRegionalL1SingleEG30 + process.hltEG300EtFilter ) process.HLTriggerFirstPath = cms.Path( process.hltGetConditions + process.hltGetRaw + process.hltBoolFalse ) process.HLT_Mu17_NoFilters_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleMu12 + process.hltPreMu17NoFilters + process.hltL1fL1sMu12L1Filtered0 + process.HLTL2muonrecoSequence + process.hltL2fL1sMu12L2Filtered12 + process.HLTL3NoFiltersmuonrecoSequence + process.hltL3NoFiltersfL1sMu12L3Filtered17 + process.HLTEndSequence ) @@ -24822,6 +25949,26 @@ process.HLT_Ele17_Ele12_Ele10_CaloId_TrackId_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1EG12EG7EG5 + process.hltPreEle17Ele12Ele10CaloIdTrackId + process.HLTEle17Ele12Ele10CaloIdTrackIdSequence + process.HLTEndSequence ) process.HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1Mu12EG7 + process.hltPreMu23TrkIsoVVLEle12GsfCaloIdTrackIdIsoMediumWP + process.hltL1Mu12EG7L1MuFiltered0 + process.HLTL2muonrecoSequence + process.hltL1Mu12EG7L2MuFiltered0 + process.HLTL3muonrecoSequence + process.hltL1Mu12EG7L3MuFiltered23 + process.HLTL3muontrkisovvlSequence + process.hltL1Mu12EG7L3IsoMuFiltered23 + process.HLTMu23Ele12_Gsf + process.HLTEndSequence ) process.HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12 + process.hltPreMu8TrkIsoVVLEle23GsfCaloIdTrackIdIsoMediumWP + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12L1Filtered0 + process.HLTL2muonrecoSequence + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12L2Filtered5 + process.HLTL3muonrecoSequence + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12L3Filtered8 + process.HLTL3muontrkisovvlSequence + process.hltL1sL1Mu3p5EG12ORL1MuOpenEG12L3IsoFiltered8 + process.HLTMu8Ele23_Gsf + process.HLTEndSequence ) +process.HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton22R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton22R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton36R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton36R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton50R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton50R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton75R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton75R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton90R9Id90HE10Iso40EBOnlyPFMET40 + process.HLTPhoton90R9Id90HE10Iso40EBOnlySequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon135_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton135PFMET40 + process.HLTSinglePhoton135Sequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon150_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton150PFMET40 + process.HLTSinglePhoton150Sequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon160_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton160PFMET40 + process.HLTSinglePhoton160Sequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon250_NoHE_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton250NoHEPFMET40 + process.HLTSinglePhoton250NoHESequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon300_NoHE_PFMET40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton300NoHEPFMET40 + process.HLTSinglePhoton300NoHESequence + process.HLTAK4PFJetsSequence + process.hltPFMETProducer + process.hltPFMET40Filter + process.HLTEndSequence ) +process.HLT_Photon22_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton22R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton22R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon36_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton36R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton36R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon50_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton50R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton50R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon75_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton75R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton75R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon90_R9Id90_HE10_Iso40_EBOnly_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG22 + process.hltPrePhoton90R9Id90HE10Iso40EBOnlyVBF + process.HLTPhoton90R9Id90HE10Iso40EBOnlySequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon135_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton135VBF + process.HLTSinglePhoton135Sequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon150_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton150VBF + process.HLTSinglePhoton150Sequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon160_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton160VBF + process.HLTSinglePhoton160Sequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon250_NoHE_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton250NoHEVBF + process.HLTSinglePhoton250NoHESequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) +process.HLT_Photon300_NoHE_VBF_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG30 + process.hltPrePhoton300NoHEVBF + process.HLTSinglePhoton300NoHESequence + process.HLTAK4CaloJetsSequence + process.hltDiCaloJet20MJJ400AllJetsDEta3Filter + process.HLTEndSequence ) process.HLT_Physics_v1 = cms.Path( process.HLTBeginSequence + process.hltPrePhysics + process.HLTEndSequence ) process.HLTriggerFinalPath = cms.Path( process.hltGtDigis + process.hltScalersRawToDigi + process.hltFEDSelector + process.hltTriggerSummaryAOD + process.hltTriggerSummaryRAW ) process.HLTAnalyzerEndpath = cms.EndPath( process.hltL1GtTrigReport + process.hltTrigReport ) @@ -24840,10 +25987,6 @@ ) ) -# Enable HF Noise filters in GRun menu -if 'hltHfreco' in process.__dict__: - process.hltHfreco.setNoiseFlags = cms.bool( True ) - # customise the HLT menu for running on MC from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC process = customizeHLTforMC(process) diff --git a/HLTrigger/Configuration/test/OnLine_HLT_HIon.py b/HLTrigger/Configuration/test/OnLine_HLT_HIon.py index e4cf4190576fd..828f696e6a33e 100644 --- a/HLTrigger/Configuration/test/OnLine_HLT_HIon.py +++ b/HLTrigger/Configuration/test/OnLine_HLT_HIon.py @@ -1,11 +1,11 @@ -# /dev/CMSSW_7_1_1/HIon/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/HIon/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms process = cms.Process( "HLTHIon" ) process.HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/HIon/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/HIon/V87') ) process.HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -453,6 +453,10 @@ ) process.streams = cms.PSet( A = cms.vstring( 'InitialPD' ) ) process.datasets = cms.PSet( InitialPD = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', + 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', + 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ) process.magfield = cms.ESSource( "XMLIdealGeometryESSource", @@ -2126,8 +2130,8 @@ setSigmaZ = cms.double( 0.0 ), maxRadius = cms.double( 2.0 ) ) -process.hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), +process.hltL1sMu16 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleMu16" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -2138,7 +2142,1550 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -process.hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", +process.hltPreMu40 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltL1fL1sMu16L1Filtered0 = cms.EDFilter( "HLTMuonL1Filter", + saveTags = cms.bool( False ), + CSCTFtag = cms.InputTag( "unused" ), + PreviousCandTag = cms.InputTag( "hltL1sMu16" ), + MinPt = cms.double( 0.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 2.5 ), + SelectQualities = cms.vint32( ), + CandTag = cms.InputTag( "hltL1extraParticles" ), + ExcludeSingleSegmentCSC = cms.bool( False ) +) +process.hltMuonDTDigis = cms.EDProducer( "DTUnpackingModule", + useStandardFEDid = cms.bool( True ), + inputLabel = cms.InputTag( "rawDataCollector" ), + dataType = cms.string( "DDU" ), + fedbyType = cms.bool( False ), + readOutParameters = cms.PSet( + debug = cms.untracked.bool( False ), + rosParameters = cms.PSet( + writeSC = cms.untracked.bool( True ), + readingDDU = cms.untracked.bool( True ), + performDataIntegrityMonitor = cms.untracked.bool( False ), + readDDUIDfromDDU = cms.untracked.bool( True ), + debug = cms.untracked.bool( False ), + localDAQ = cms.untracked.bool( False ) + ), + localDAQ = cms.untracked.bool( False ), + performDataIntegrityMonitor = cms.untracked.bool( False ) + ), + dqmOnly = cms.bool( False ) +) +process.hltDt1DRecHits = cms.EDProducer( "DTRecHitProducer", + debug = cms.untracked.bool( False ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + dtDigiLabel = cms.InputTag( "hltMuonDTDigis" ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ) +) +process.hltDt4DSegments = cms.EDProducer( "DTRecSegment4DProducer", + debug = cms.untracked.bool( False ), + Reco4DAlgoName = cms.string( "DTCombinatorialPatternReco4D" ), + recHits2DLabel = cms.InputTag( "dt2DSegments" ), + recHits1DLabel = cms.InputTag( "hltDt1DRecHits" ), + Reco4DAlgoConfig = cms.PSet( + segmCleanerMode = cms.int32( 2 ), + Reco2DAlgoName = cms.string( "DTCombinatorialPatternReco" ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + nSharedHitsMax = cms.int32( 2 ), + hit_afterT0_resolution = cms.double( 0.03 ), + Reco2DAlgoConfig = cms.PSet( + segmCleanerMode = cms.int32( 2 ), + recAlgoConfig = cms.PSet( + tTrigMode = cms.string( "DTTTrigSyncFromDB" ), + minTime = cms.double( -3.0 ), + stepTwoFromDigi = cms.bool( False ), + doVdriftCorr = cms.bool( False ), + debug = cms.untracked.bool( False ), + maxTime = cms.double( 420.0 ), + tTrigModeConfig = cms.PSet( + vPropWire = cms.double( 24.4 ), + doTOFCorrection = cms.bool( True ), + tofCorrType = cms.int32( 0 ), + wirePropCorrType = cms.int32( 0 ), + tTrigLabel = cms.string( "" ), + doWirePropCorrection = cms.bool( True ), + doT0Correction = cms.bool( True ), + debug = cms.untracked.bool( False ) + ), + useUncertDB = cms.bool( True ) + ), + nSharedHitsMax = cms.int32( 2 ), + AlphaMaxPhi = cms.double( 1.0 ), + hit_afterT0_resolution = cms.double( 0.03 ), + MaxAllowedHits = cms.uint32( 50 ), + performT0_vdriftSegCorrection = cms.bool( False ), + AlphaMaxTheta = cms.double( 0.9 ), + debug = cms.untracked.bool( False ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ), + nUnSharedHitsMin = cms.int32( 2 ), + performT0SegCorrection = cms.bool( False ), + perform_delta_rejecting = cms.bool( False ) + ), + performT0_vdriftSegCorrection = cms.bool( False ), + debug = cms.untracked.bool( False ), + recAlgo = cms.string( "DTLinearDriftFromDBAlgo" ), + nUnSharedHitsMin = cms.int32( 2 ), + AllDTRecHits = cms.bool( True ), + performT0SegCorrection = cms.bool( False ), + perform_delta_rejecting = cms.bool( False ) + ) +) +process.hltMuonCSCDigis = cms.EDProducer( "CSCDCCUnpacker", + PrintEventNumber = cms.untracked.bool( False ), + UseSelectiveUnpacking = cms.bool( True ), + UseExaminer = cms.bool( True ), + ErrorMask = cms.uint32( 0x0 ), + InputObjects = cms.InputTag( "rawDataCollector" ), + UseFormatStatus = cms.bool( True ), + ExaminerMask = cms.uint32( 0x1febf3f6 ), + UnpackStatusDigis = cms.bool( False ), + VisualFEDInspect = cms.untracked.bool( False ), + FormatedEventDump = cms.untracked.bool( False ), + Debug = cms.untracked.bool( False ), + VisualFEDShort = cms.untracked.bool( False ) +) +process.hltCsc2DRecHits = cms.EDProducer( "CSCRecHitDProducer", + XTasymmetry_ME1b = cms.double( 0.0 ), + XTasymmetry_ME1a = cms.double( 0.0 ), + ConstSyst_ME1a = cms.double( 0.022 ), + ConstSyst_ME1b = cms.double( 0.007 ), + XTasymmetry_ME41 = cms.double( 0.0 ), + CSCStripxtalksOffset = cms.double( 0.03 ), + CSCUseCalibrations = cms.bool( True ), + CSCUseTimingCorrections = cms.bool( True ), + CSCNoOfTimeBinsForDynamicPedestal = cms.int32( 2 ), + XTasymmetry_ME22 = cms.double( 0.0 ), + UseFivePoleFit = cms.bool( True ), + XTasymmetry_ME21 = cms.double( 0.0 ), + ConstSyst_ME21 = cms.double( 0.0 ), + CSCDebug = cms.untracked.bool( False ), + ConstSyst_ME22 = cms.double( 0.0 ), + CSCUseGasGainCorrections = cms.bool( False ), + XTasymmetry_ME31 = cms.double( 0.0 ), + readBadChambers = cms.bool( True ), + NoiseLevel_ME13 = cms.double( 8.0 ), + NoiseLevel_ME12 = cms.double( 9.0 ), + NoiseLevel_ME32 = cms.double( 9.0 ), + NoiseLevel_ME31 = cms.double( 9.0 ), + XTasymmetry_ME32 = cms.double( 0.0 ), + ConstSyst_ME41 = cms.double( 0.0 ), + CSCStripClusterSize = cms.untracked.int32( 3 ), + CSCStripClusterChargeCut = cms.double( 25.0 ), + CSCStripPeakThreshold = cms.double( 10.0 ), + readBadChannels = cms.bool( True ), + UseParabolaFit = cms.bool( False ), + XTasymmetry_ME13 = cms.double( 0.0 ), + XTasymmetry_ME12 = cms.double( 0.0 ), + wireDigiTag = cms.InputTag( 'hltMuonCSCDigis','MuonCSCWireDigi' ), + ConstSyst_ME12 = cms.double( 0.0 ), + ConstSyst_ME13 = cms.double( 0.0 ), + ConstSyst_ME32 = cms.double( 0.0 ), + ConstSyst_ME31 = cms.double( 0.0 ), + UseAverageTime = cms.bool( False ), + NoiseLevel_ME1a = cms.double( 7.0 ), + NoiseLevel_ME1b = cms.double( 8.0 ), + CSCWireClusterDeltaT = cms.int32( 1 ), + CSCUseStaticPedestals = cms.bool( False ), + stripDigiTag = cms.InputTag( 'hltMuonCSCDigis','MuonCSCStripDigi' ), + CSCstripWireDeltaTime = cms.int32( 8 ), + NoiseLevel_ME21 = cms.double( 9.0 ), + NoiseLevel_ME22 = cms.double( 9.0 ), + NoiseLevel_ME41 = cms.double( 9.0 ) +) +process.hltCscSegments = cms.EDProducer( "CSCSegmentProducer", + inputObjects = cms.InputTag( "hltCsc2DRecHits" ), + algo_psets = cms.VPSet( + cms.PSet( chamber_types = cms.vstring( 'ME1/a', + 'ME1/b', + 'ME1/2', + 'ME1/3', + 'ME2/1', + 'ME2/2', + 'ME3/1', + 'ME3/2', + 'ME4/1', + 'ME4/2' ), + algo_name = cms.string( "CSCSegAlgoST" ), + parameters_per_chamber_type = cms.vint32( 2, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), + algo_psets = cms.VPSet( + cms.PSet( maxRatioResidualPrune = cms.double( 3.0 ), + yweightPenalty = cms.double( 1.5 ), + maxRecHitsInCluster = cms.int32( 20 ), + dPhiFineMax = cms.double( 0.025 ), + preClusteringUseChaining = cms.bool( True ), + ForceCovariance = cms.bool( False ), + hitDropLimit6Hits = cms.double( 0.3333 ), + NormChi2Cut2D = cms.double( 20.0 ), + BPMinImprovement = cms.double( 10000.0 ), + Covariance = cms.double( 0.0 ), + tanPhiMax = cms.double( 0.5 ), + SeedBig = cms.double( 0.0015 ), + onlyBestSegment = cms.bool( False ), + dRPhiFineMax = cms.double( 8.0 ), + SeedSmall = cms.double( 2.0E-4 ), + curvePenalty = cms.double( 2.0 ), + dXclusBoxMax = cms.double( 4.0 ), + BrutePruning = cms.bool( True ), + curvePenaltyThreshold = cms.double( 0.85 ), + CorrectTheErrors = cms.bool( True ), + hitDropLimit4Hits = cms.double( 0.6 ), + useShowering = cms.bool( False ), + CSCDebug = cms.untracked.bool( False ), + tanThetaMax = cms.double( 1.2 ), + NormChi2Cut3D = cms.double( 10.0 ), + minHitsPerSegment = cms.int32( 3 ), + ForceCovarianceAll = cms.bool( False ), + yweightPenaltyThreshold = cms.double( 1.0 ), + prePrunLimit = cms.double( 3.17 ), + hitDropLimit5Hits = cms.double( 0.8 ), + preClustering = cms.bool( True ), + prePrun = cms.bool( True ), + maxDPhi = cms.double( 999.0 ), + maxDTheta = cms.double( 999.0 ), + Pruning = cms.bool( True ), + dYclusBoxMax = cms.double( 8.0 ) + ), + cms.PSet( maxRatioResidualPrune = cms.double( 3.0 ), + yweightPenalty = cms.double( 1.5 ), + maxRecHitsInCluster = cms.int32( 24 ), + dPhiFineMax = cms.double( 0.025 ), + preClusteringUseChaining = cms.bool( True ), + ForceCovariance = cms.bool( False ), + hitDropLimit6Hits = cms.double( 0.3333 ), + NormChi2Cut2D = cms.double( 20.0 ), + BPMinImprovement = cms.double( 10000.0 ), + Covariance = cms.double( 0.0 ), + tanPhiMax = cms.double( 0.5 ), + SeedBig = cms.double( 0.0015 ), + onlyBestSegment = cms.bool( False ), + dRPhiFineMax = cms.double( 8.0 ), + SeedSmall = cms.double( 2.0E-4 ), + curvePenalty = cms.double( 2.0 ), + dXclusBoxMax = cms.double( 4.0 ), + BrutePruning = cms.bool( True ), + curvePenaltyThreshold = cms.double( 0.85 ), + CorrectTheErrors = cms.bool( True ), + hitDropLimit4Hits = cms.double( 0.6 ), + useShowering = cms.bool( False ), + CSCDebug = cms.untracked.bool( False ), + tanThetaMax = cms.double( 1.2 ), + NormChi2Cut3D = cms.double( 10.0 ), + minHitsPerSegment = cms.int32( 3 ), + ForceCovarianceAll = cms.bool( False ), + yweightPenaltyThreshold = cms.double( 1.0 ), + prePrunLimit = cms.double( 3.17 ), + hitDropLimit5Hits = cms.double( 0.8 ), + preClustering = cms.bool( True ), + prePrun = cms.bool( True ), + maxDPhi = cms.double( 999.0 ), + maxDTheta = cms.double( 999.0 ), + Pruning = cms.bool( True ), + dYclusBoxMax = cms.double( 8.0 ) + ) + ) + ) + ), + algo_type = cms.int32( 1 ) +) +process.hltMuonRPCDigis = cms.EDProducer( "RPCUnpackingModule", + InputLabel = cms.InputTag( "rawDataCollector" ), + doSynchro = cms.bool( False ) +) +process.hltRpcRecHits = cms.EDProducer( "RPCRecHitProducer", + recAlgoConfig = cms.PSet( ), + deadvecfile = cms.FileInPath( "RecoLocalMuon/RPCRecHit/data/RPCDeadVec.dat" ), + rpcDigiLabel = cms.InputTag( "hltMuonRPCDigis" ), + maskvecfile = cms.FileInPath( "RecoLocalMuon/RPCRecHit/data/RPCMaskVec.dat" ), + recAlgo = cms.string( "RPCRecHitStandardAlgo" ), + deadSource = cms.string( "File" ), + maskSource = cms.string( "File" ) +) +process.hltL2OfflineMuonSeeds = cms.EDProducer( "MuonSeedGenerator", + SMB_21 = cms.vdouble( 1.043, -0.124, 0.0, 0.183, 0.0, 0.0 ), + SMB_20 = cms.vdouble( 1.011, -0.052, 0.0, 0.188, 0.0, 0.0 ), + SMB_22 = cms.vdouble( 1.474, -0.758, 0.0, 0.185, 0.0, 0.0 ), + OL_2213 = cms.vdouble( 0.117, 0.0, 0.0, 0.044, 0.0, 0.0 ), + SME_11 = cms.vdouble( 3.295, -1.527, 0.112, 0.378, 0.02, 0.0 ), + SME_13 = cms.vdouble( -1.286, 1.711, 0.0, 0.356, 0.0, 0.0 ), + SME_12 = cms.vdouble( 0.102, 0.599, 0.0, 0.38, 0.0, 0.0 ), + DT_34_2_scale = cms.vdouble( -11.901897, 0.0 ), + OL_1213_0_scale = cms.vdouble( -4.488158, 0.0 ), + OL_1222_0_scale = cms.vdouble( -5.810449, 0.0 ), + DT_13 = cms.vdouble( 0.315, 0.068, -0.127, 0.051, -0.002, 0.0 ), + DT_12 = cms.vdouble( 0.183, 0.054, -0.087, 0.028, 0.002, 0.0 ), + DT_14 = cms.vdouble( 0.359, 0.052, -0.107, 0.072, -0.004, 0.0 ), + CSC_13_3_scale = cms.vdouble( -1.701268, 0.0 ), + DT_24_2_scale = cms.vdouble( -6.63094, 0.0 ), + CSC_23 = cms.vdouble( -0.081, 0.113, -0.029, 0.015, 0.008, 0.0 ), + CSC_24 = cms.vdouble( 0.004, 0.021, -0.002, 0.053, 0.0, 0.0 ), + OL_2222 = cms.vdouble( 0.107, 0.0, 0.0, 0.04, 0.0, 0.0 ), + DT_14_2_scale = cms.vdouble( -4.808546, 0.0 ), + SMB_10 = cms.vdouble( 1.387, -0.038, 0.0, 0.19, 0.0, 0.0 ), + SMB_11 = cms.vdouble( 1.247, 0.72, -0.802, 0.229, -0.075, 0.0 ), + SMB_12 = cms.vdouble( 2.128, -0.956, 0.0, 0.199, 0.0, 0.0 ), + SME_21 = cms.vdouble( -0.529, 1.194, -0.358, 0.472, 0.086, 0.0 ), + SME_22 = cms.vdouble( -1.207, 1.491, -0.251, 0.189, 0.243, 0.0 ), + DT_13_2_scale = cms.vdouble( -4.257687, 0.0 ), + CSC_34 = cms.vdouble( 0.062, -0.067, 0.019, 0.021, 0.003, 0.0 ), + SME_22_0_scale = cms.vdouble( -3.457901, 0.0 ), + DT_24_1_scale = cms.vdouble( -7.490909, 0.0 ), + OL_1232_0_scale = cms.vdouble( -5.964634, 0.0 ), + DT_23_1_scale = cms.vdouble( -5.320346, 0.0 ), + SME_13_0_scale = cms.vdouble( 0.104905, 0.0 ), + SMB_22_0_scale = cms.vdouble( 1.346681, 0.0 ), + CSC_12_1_scale = cms.vdouble( -6.434242, 0.0 ), + DT_34 = cms.vdouble( 0.044, 0.004, -0.013, 0.029, 0.003, 0.0 ), + SME_32 = cms.vdouble( -0.901, 1.333, -0.47, 0.41, 0.073, 0.0 ), + SME_31 = cms.vdouble( -1.594, 1.482, -0.317, 0.487, 0.097, 0.0 ), + CSC_13_2_scale = cms.vdouble( -6.077936, 0.0 ), + crackEtas = cms.vdouble( 0.2, 1.6, 1.7 ), + SME_11_0_scale = cms.vdouble( 1.325085, 0.0 ), + SMB_20_0_scale = cms.vdouble( 1.486168, 0.0 ), + DT_13_1_scale = cms.vdouble( -4.520923, 0.0 ), + CSC_24_1_scale = cms.vdouble( -6.055701, 0.0 ), + CSC_01_1_scale = cms.vdouble( -1.915329, 0.0 ), + DT_23 = cms.vdouble( 0.13, 0.023, -0.057, 0.028, 0.004, 0.0 ), + DT_24 = cms.vdouble( 0.176, 0.014, -0.051, 0.051, 0.003, 0.0 ), + SMB_12_0_scale = cms.vdouble( 2.283221, 0.0 ), + SMB_30_0_scale = cms.vdouble( -3.629838, 0.0 ), + SME_42 = cms.vdouble( -0.003, 0.005, 0.005, 0.608, 0.076, 0.0 ), + SME_41 = cms.vdouble( -0.003, 0.005, 0.005, 0.608, 0.076, 0.0 ), + CSC_12_2_scale = cms.vdouble( -1.63622, 0.0 ), + DT_34_1_scale = cms.vdouble( -13.783765, 0.0 ), + CSC_34_1_scale = cms.vdouble( -11.520507, 0.0 ), + OL_2213_0_scale = cms.vdouble( -7.239789, 0.0 ), + SMB_32_0_scale = cms.vdouble( -3.054156, 0.0 ), + CSC_12_3_scale = cms.vdouble( -1.63622, 0.0 ), + SME_21_0_scale = cms.vdouble( -0.040862, 0.0 ), + OL_1232 = cms.vdouble( 0.184, 0.0, 0.0, 0.066, 0.0, 0.0 ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + SMB_10_0_scale = cms.vdouble( 2.448566, 0.0 ), + EnableDTMeasurement = cms.bool( True ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + CSC_23_2_scale = cms.vdouble( -6.079917, 0.0 ), + scaleDT = cms.bool( True ), + DT_12_2_scale = cms.vdouble( -3.518165, 0.0 ), + OL_1222 = cms.vdouble( 0.848, -0.591, 0.0, 0.062, 0.0, 0.0 ), + CSC_23_1_scale = cms.vdouble( -19.084285, 0.0 ), + OL_1213 = cms.vdouble( 0.96, -0.737, 0.0, 0.052, 0.0, 0.0 ), + CSC_02 = cms.vdouble( 0.612, -0.207, 0.0, 0.067, -0.001, 0.0 ), + CSC_03 = cms.vdouble( 0.787, -0.338, 0.029, 0.101, -0.008, 0.0 ), + CSC_01 = cms.vdouble( 0.166, 0.0, 0.0, 0.031, 0.0, 0.0 ), + SMB_32 = cms.vdouble( 0.67, -0.327, 0.0, 0.22, 0.0, 0.0 ), + SMB_30 = cms.vdouble( 0.505, -0.022, 0.0, 0.215, 0.0, 0.0 ), + SMB_31 = cms.vdouble( 0.549, -0.145, 0.0, 0.207, 0.0, 0.0 ), + crackWindow = cms.double( 0.04 ), + CSC_14_3_scale = cms.vdouble( -1.969563, 0.0 ), + SMB_31_0_scale = cms.vdouble( -3.323768, 0.0 ), + DT_12_1_scale = cms.vdouble( -3.692398, 0.0 ), + SMB_21_0_scale = cms.vdouble( 1.58384, 0.0 ), + DT_23_2_scale = cms.vdouble( -5.117625, 0.0 ), + SME_12_0_scale = cms.vdouble( 2.279181, 0.0 ), + DT_14_1_scale = cms.vdouble( -5.644816, 0.0 ), + beamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + SMB_11_0_scale = cms.vdouble( 2.56363, 0.0 ), + EnableCSCMeasurement = cms.bool( True ), + CSC_14 = cms.vdouble( 0.606, -0.181, -0.002, 0.111, -0.003, 0.0 ), + OL_2222_0_scale = cms.vdouble( -7.667231, 0.0 ), + CSC_13 = cms.vdouble( 0.901, -1.302, 0.533, 0.045, 0.005, 0.0 ), + CSC_12 = cms.vdouble( -0.161, 0.254, -0.047, 0.042, -0.007, 0.0 ) +) +process.hltL2MuonSeeds = cms.EDProducer( "L2MuonSeedGenerator", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'SteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + InputObjects = cms.InputTag( "hltL1extraParticles" ), + L1MaxEta = cms.double( 2.5 ), + OfflineSeedLabel = cms.untracked.InputTag( "hltL2OfflineMuonSeeds" ), + L1MinPt = cms.double( 0.0 ), + L1MinQuality = cms.uint32( 1 ), + GMTReadoutCollection = cms.InputTag( "hltGtDigis" ), + UseUnassociatedL1 = cms.bool( False ), + UseOfflineSeed = cms.untracked.bool( True ), + Propagator = cms.string( "SteppingHelixPropagatorAny" ) +) +process.hltL2Muons = cms.EDProducer( "L2MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny', + 'hltESPFastSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + InputObjects = cms.InputTag( "hltL2MuonSeeds" ), + SeedTransformerParameters = cms.PSet( + Fitter = cms.string( "hltESPKFFittingSmootherForL2Muon" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + NMinRecHits = cms.uint32( 2 ), + UseSubRecHits = cms.bool( False ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + RescaleError = cms.double( 100.0 ) + ), + L2TrajBuilderParameters = cms.PSet( + DoRefit = cms.bool( False ), + SeedPropagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + FilterParameters = cms.PSet( + NumberOfSigma = cms.double( 3.0 ), + FitDirection = cms.string( "insideOut" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + MaxChi2 = cms.double( 1000.0 ), + MuonTrajectoryUpdatorParameters = cms.PSet( + MaxChi2 = cms.double( 25.0 ), + RescaleErrorFactor = cms.double( 100.0 ), + Granularity = cms.int32( 0 ), + ExcludeRPCFromFit = cms.bool( False ), + UseInvalidHits = cms.bool( True ), + RescaleError = cms.bool( False ) + ), + EnableRPCMeasurement = cms.bool( True ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + EnableDTMeasurement = cms.bool( True ), + RPCRecSegmentLabel = cms.InputTag( "hltRpcRecHits" ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + EnableCSCMeasurement = cms.bool( True ) + ), + NavigationType = cms.string( "Standard" ), + SeedTransformerParameters = cms.PSet( + Fitter = cms.string( "hltESPKFFittingSmootherForL2Muon" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + NMinRecHits = cms.uint32( 2 ), + UseSubRecHits = cms.bool( False ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + RescaleError = cms.double( 100.0 ) + ), + DoBackwardFilter = cms.bool( True ), + SeedPosition = cms.string( "in" ), + BWFilterParameters = cms.PSet( + NumberOfSigma = cms.double( 3.0 ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + FitDirection = cms.string( "outsideIn" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + MaxChi2 = cms.double( 100.0 ), + MuonTrajectoryUpdatorParameters = cms.PSet( + MaxChi2 = cms.double( 25.0 ), + RescaleErrorFactor = cms.double( 100.0 ), + Granularity = cms.int32( 0 ), + ExcludeRPCFromFit = cms.bool( False ), + UseInvalidHits = cms.bool( True ), + RescaleError = cms.bool( False ) + ), + EnableRPCMeasurement = cms.bool( True ), + BWSeedType = cms.string( "fromGenerator" ), + EnableDTMeasurement = cms.bool( True ), + RPCRecSegmentLabel = cms.InputTag( "hltRpcRecHits" ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + EnableCSCMeasurement = cms.bool( True ) + ), + DoSeedRefit = cms.bool( False ) + ), + DoSeedRefit = cms.bool( False ), + TrackLoaderParameters = cms.PSet( + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + DoSmoothing = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + BeamSpotPosition = cms.vdouble( 0.0, 0.0, 0.0 ), + Propagator = cms.string( "hltESPFastSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( True ) + ), + MuonTrajectoryBuilder = cms.string( "Exhaustive" ) +) +process.hltL2MuonCandidates = cms.EDProducer( "L2MuonCandidateProducer", + InputObjects = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +process.hltL2fL1sMu16L1f0L2Filtered16Q = cms.EDFilter( "HLTMuonL2PreFilter", + saveTags = cms.bool( True ), + MaxDr = cms.double( 9999.0 ), + CutOnChambers = cms.bool( False ), + PreviousCandTag = cms.InputTag( "hltL1fL1sMu16L1Filtered0" ), + MinPt = cms.double( 16.0 ), + MinN = cms.int32( 1 ), + SeedMapTag = cms.InputTag( "hltL2Muons" ), + MaxEta = cms.double( 2.5 ), + MinNhits = cms.vint32( 0, 1, 0, 1 ), + MinDxySig = cms.double( -1.0 ), + MinNchambers = cms.vint32( 0 ), + AbsEtaBins = cms.vdouble( 0.9, 1.5, 2.1, 5.0 ), + MaxDz = cms.double( 9999.0 ), + CandTag = cms.InputTag( "hltL2MuonCandidates" ), + BeamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + MinDr = cms.double( -1.0 ), + NSigmaPt = cms.double( 0.0 ), + MinNstations = cms.vint32( 0, 2, 0, 2 ) +) +process.hltSiPixelDigis = cms.EDProducer( "SiPixelRawToDigi", + UseQualityInfo = cms.bool( False ), + CheckPixelOrder = cms.bool( False ), + IncludeErrors = cms.bool( False ), + InputLabel = cms.InputTag( "rawDataCollector" ), + ErrorList = cms.vint32( ), + Regions = cms.PSet( ), + Timing = cms.untracked.bool( False ), + UserErrorList = cms.vint32( ) +) +process.hltSiPixelClusters = cms.EDProducer( "SiPixelClusterProducer", + src = cms.InputTag( "hltSiPixelDigis" ), + ChannelThreshold = cms.int32( 1000 ), + maxNumberOfClusters = cms.int32( 20000 ), + VCaltoElectronGain = cms.int32( 65 ), + MissCalibrate = cms.untracked.bool( True ), + SplitClusters = cms.bool( False ), + VCaltoElectronOffset = cms.int32( -414 ), + payloadType = cms.string( "HLT" ), + SeedThreshold = cms.int32( 1000 ), + ClusterThreshold = cms.double( 4000.0 ) +) +process.hltSiPixelClustersCache = cms.EDProducer( "SiPixelClusterShapeCacheProducer", + src = cms.InputTag( "hltSiPixelClusters" ), + onDemand = cms.bool( False ) +) +process.hltSiPixelRecHits = cms.EDProducer( "SiPixelRecHitConverter", + VerboseLevel = cms.untracked.int32( 0 ), + src = cms.InputTag( "hltSiPixelClusters" ), + CPE = cms.string( "hltESPPixelCPEGeneric" ) +) +process.hltSiStripExcludedFEDListProducer = cms.EDProducer( "SiStripExcludedFEDListProducer", + ProductLabel = cms.InputTag( "rawDataCollector" ) +) +process.hltSiStripRawToClustersFacility = cms.EDProducer( "SiStripClusterizerFromRaw", + ProductLabel = cms.InputTag( "rawDataCollector" ), + DoAPVEmulatorCheck = cms.bool( False ), + Algorithms = cms.PSet( + SiStripFedZeroSuppressionMode = cms.uint32( 4 ), + CommonModeNoiseSubtractionMode = cms.string( "Median" ), + PedestalSubtractionFedMode = cms.bool( True ), + TruncateInSuppressor = cms.bool( True ), + doAPVRestore = cms.bool( False ), + useCMMeanMap = cms.bool( False ) + ), + Clusterizer = cms.PSet( + ChannelThreshold = cms.double( 2.0 ), + MaxSequentialBad = cms.uint32( 1 ), + MaxSequentialHoles = cms.uint32( 0 ), + Algorithm = cms.string( "ThreeThresholdAlgorithm" ), + MaxAdjacentBad = cms.uint32( 0 ), + QualityLabel = cms.string( "" ), + SeedThreshold = cms.double( 3.0 ), + ClusterThreshold = cms.double( 5.0 ), + setDetId = cms.bool( True ), + RemoveApvShots = cms.bool( True ) + ), + onDemand = cms.bool( True ) +) +process.hltSiStripClusters = cms.EDProducer( "MeasurementTrackerEventProducer", + inactivePixelDetectorLabels = cms.VInputTag( ), + stripClusterProducer = cms.string( "hltSiStripRawToClustersFacility" ), + pixelClusterProducer = cms.string( "hltSiPixelClusters" ), + switchOffPixelsIfEmpty = cms.bool( True ), + inactiveStripDetectorLabels = cms.VInputTag( 'hltSiStripExcludedFEDListProducer' ), + skipClusters = cms.InputTag( "" ), + measurementTracker = cms.string( "hltESPMeasurementTracker" ) +) +process.hltL3TrajSeedOIState = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + propagatorCompatibleName = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + option = cms.uint32( 3 ), + maxChi2 = cms.double( 40.0 ), + errorMatrixPset = cms.PSet( + atIP = cms.bool( True ), + action = cms.string( "use" ), + errorMatrixValuesPSet = cms.PSet( + pf3_V12 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V13 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V11 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V14 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V15 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + yAxis = cms.vdouble( 0.0, 1.0, 1.4, 10.0 ), + pf3_V33 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + zAxis = cms.vdouble( -3.14159, 3.14159 ), + pf3_V44 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + xAxis = cms.vdouble( 0.0, 13.0, 30.0, 70.0, 1000.0 ), + pf3_V22 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V23 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V45 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V55 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V34 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V35 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V25 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V24 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ) + ) + ), + propagatorName = cms.string( "hltESPSteppingHelixPropagatorAlong" ), + manySeeds = cms.bool( False ), + copyMuonRecHit = cms.bool( False ), + ComponentName = cms.string( "TSGForRoadSearch" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSteppingHelixPropagatorOpposite', + 'hltESPSteppingHelixPropagatorAlong' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( ), + PtCut = cms.double( 1.0 ) +) +process.hltL3TrackCandidateFromL2OIState = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedOIState" ), + reverseTrajectories = cms.bool( True ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilderSeedHit" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilderSeedHit" ), + maxNSeeds = cms.uint32( 100000 ) +) +process.hltL3TkTracksFromL2OIState = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2OIState" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +process.hltL3MuonsOIState = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2OIState" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +process.hltL3TrajSeedOIHit = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + PSetNames = cms.vstring( 'skipTSG', + 'iterativeTSG' ), + L3TkCollectionA = cms.InputTag( "hltL3MuonsOIState" ), + iterativeTSG = cms.PSet( + ErrorRescaling = cms.double( 3.0 ), + beamSpot = cms.InputTag( "unused" ), + MaxChi2 = cms.double( 40.0 ), + errorMatrixPset = cms.PSet( + atIP = cms.bool( True ), + action = cms.string( "use" ), + errorMatrixValuesPSet = cms.PSet( + pf3_V12 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V13 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V11 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V14 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V15 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + yAxis = cms.vdouble( 0.0, 1.0, 1.4, 10.0 ), + pf3_V33 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + zAxis = cms.vdouble( -3.14159, 3.14159 ), + pf3_V44 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + xAxis = cms.vdouble( 0.0, 13.0, 30.0, 70.0, 1000.0 ), + pf3_V22 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V23 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V45 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V55 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 3.0, 3.0, 3.0, 5.0, 4.0, 5.0, 10.0, 7.0, 10.0, 10.0, 10.0, 10.0 ) + ), + pf3_V34 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V35 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V25 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ), + pf3_V24 = cms.PSet( + action = cms.string( "scale" ), + values = cms.vdouble( 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ) + ) + ) + ), + UpdateState = cms.bool( True ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SelectState = cms.bool( False ), + SigmaZ = cms.double( 25.0 ), + ResetMethod = cms.string( "matrix" ), + ComponentName = cms.string( "TSGFromPropagation" ), + UseVertexState = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAnyOpposite" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + skipTSG = cms.PSet( ), + ComponentName = cms.string( "DualByL2TSG" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'PropagatorWithMaterial', + 'hltESPSmartPropagatorAnyOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( + cleanerFromSharedHits = cms.bool( True ), + ptCleaner = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + directionCleaner = cms.bool( True ) + ), + PtCut = cms.double( 1.0 ) +) +process.hltL3TrackCandidateFromL2OIHit = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedOIHit" ), + reverseTrajectories = cms.bool( True ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilder" ), + maxNSeeds = cms.uint32( 100000 ) +) +process.hltL3TkTracksFromL2OIHit = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2OIHit" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +process.hltL3MuonsOIHit = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2OIHit" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +process.hltL3TkFromL2OICombination = cms.EDProducer( "L3TrackCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit' ) +) +process.hltPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +process.hltPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +process.hltMixedLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg', + 'FPix2_pos+TEC1_pos', + 'FPix2_pos+TEC2_pos', + 'TEC1_pos+TEC2_pos', + 'TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC1_neg', + 'FPix2_neg+TEC2_neg', + 'TEC1_neg+TEC2_neg', + 'TEC2_neg+TEC3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0051 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + useErrorsFromParam = cms.bool( True ), + hitErrorRPhi = cms.double( 0.0027 ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ) + ), + TIB = cms.PSet( ) +) +process.hltL3TrajSeedIOHit = cms.EDProducer( "TSGFromL2Muon", + TkSeedGenerator = cms.PSet( + PSetNames = cms.vstring( 'skipTSG', + 'iterativeTSG' ), + L3TkCollectionA = cms.InputTag( "hltL3TkFromL2OICombination" ), + iterativeTSG = cms.PSet( + firstTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 0 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.06 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + PSetNames = cms.vstring( 'firstTSG', + 'secondTSG' ), + ComponentName = cms.string( "CombinedTSG" ), + thirdTSG = cms.PSet( + PSetNames = cms.vstring( 'endcapTSG', + 'barrelTSG' ), + barrelTSG = cms.PSet( ), + endcapTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + etaSeparation = cms.double( 2.0 ), + ComponentName = cms.string( "DualByEtaTSG" ) + ), + secondTSG = cms.PSet( + ComponentName = cms.string( "TSGFromOrderedHits" ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltPixelLayerPairs" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ) + ), + skipTSG = cms.PSet( ), + ComponentName = cms.string( "DualByL2TSG" ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'PropagatorWithMaterial' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.1 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.1 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + PCut = cms.double( 2.5 ), + TrackerSeedCleaner = cms.PSet( + cleanerFromSharedHits = cms.bool( True ), + ptCleaner = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + directionCleaner = cms.bool( True ) + ), + PtCut = cms.double( 1.0 ) +) +process.hltL3TrackCandidateFromL2IOHit = cms.EDProducer( "CkfTrajectoryMaker", + src = cms.InputTag( "hltL3TrajSeedIOHit" ), + reverseTrajectories = cms.bool( False ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + trackCandidateAlso = cms.bool( True ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetMuonCkfTrajectoryBuilder" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "hltESPMuonCkfTrajectoryBuilder" ), + maxNSeeds = cms.uint32( 100000 ) +) +process.hltL3TkTracksFromL2IOHit = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltL3TrackCandidateFromL2IOHit" ), + SimpleMagneticField = cms.string( "" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPKFFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "undefAlgorithm" ), + alias = cms.untracked.string( "" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( False ), + Propagator = cms.string( "PropagatorWithMaterial" ) +) +process.hltL3MuonsIOHit = cms.EDProducer( "L3MuonProducer", + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPSmartPropagatorAny', + 'SteppingHelixPropagatorAny', + 'hltESPSmartPropagator', + 'hltESPSteppingHelixPropagatorOpposite' ), + RPCLayers = cms.bool( True ), + UseMuonNavigation = cms.untracked.bool( True ) + ), + L3TrajBuilderParameters = cms.PSet( + ScaleTECyFactor = cms.double( -1.0 ), + GlbRefitterParameters = cms.PSet( + TrackerSkipSection = cms.int32( -1 ), + DoPredictionsOnly = cms.bool( False ), + PropDirForCosmics = cms.bool( False ), + HitThreshold = cms.int32( 1 ), + MuonHitsOption = cms.int32( 1 ), + Chi2CutRPC = cms.double( 1.0 ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + DTRecSegmentLabel = cms.InputTag( "hltDt4DSegments" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + CSCRecSegmentLabel = cms.InputTag( "hltCscSegments" ), + Chi2CutCSC = cms.double( 150.0 ), + Chi2CutDT = cms.double( 10.0 ), + RefitRPCHits = cms.bool( True ), + SkipStation = cms.int32( -1 ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ), + TrackerSkipSystem = cms.int32( -1 ), + DYTthrs = cms.vint32( 30, 15 ) + ), + ScaleTECxFactor = cms.double( -1.0 ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + MuonTrackingRegionBuilder = cms.PSet( + EtaR_UpperLimit_Par1 = cms.double( 0.25 ), + EtaR_UpperLimit_Par2 = cms.double( 0.15 ), + OnDemand = cms.double( -1.0 ), + Rescale_Dz = cms.double( 3.0 ), + vertexCollection = cms.InputTag( "pixelVertices" ), + Rescale_phi = cms.double( 3.0 ), + Eta_fixed = cms.double( 0.2 ), + DeltaZ_Region = cms.double( 15.9 ), + MeasurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + PhiR_UpperLimit_Par2 = cms.double( 0.2 ), + Eta_min = cms.double( 0.05 ), + Phi_fixed = cms.double( 0.2 ), + DeltaR = cms.double( 0.2 ), + EscapePt = cms.double( 1.5 ), + UseFixedRegion = cms.bool( False ), + PhiR_UpperLimit_Par1 = cms.double( 0.6 ), + Rescale_eta = cms.double( 3.0 ), + Phi_min = cms.double( 0.05 ), + UseVertex = cms.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ), + RefitRPCHits = cms.bool( True ), + PCut = cms.double( 2.5 ), + TrackTransformer = cms.PSet( + DoPredictionsOnly = cms.bool( False ), + Fitter = cms.string( "hltESPL3MuKFTrajectoryFitter" ), + TrackerRecHitBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonRecHitBuilder = cms.string( "hltESPMuonTransientTrackingRecHitBuilder" ), + RefitDirection = cms.string( "insideOut" ), + RefitRPCHits = cms.bool( True ), + Propagator = cms.string( "hltESPSmartPropagatorAny" ) + ), + GlobalMuonTrackMatcher = cms.PSet( + Pt_threshold1 = cms.double( 0.0 ), + DeltaDCut_3 = cms.double( 15.0 ), + MinP = cms.double( 2.5 ), + MinPt = cms.double( 1.0 ), + Chi2Cut_1 = cms.double( 50.0 ), + Pt_threshold2 = cms.double( 9.99999999E8 ), + LocChi2Cut = cms.double( 0.001 ), + Eta_threshold = cms.double( 1.2 ), + Quality_3 = cms.double( 7.0 ), + Quality_2 = cms.double( 15.0 ), + Chi2Cut_2 = cms.double( 50.0 ), + Chi2Cut_3 = cms.double( 200.0 ), + DeltaDCut_1 = cms.double( 40.0 ), + DeltaRCut_2 = cms.double( 0.2 ), + DeltaRCut_3 = cms.double( 1.0 ), + DeltaDCut_2 = cms.double( 10.0 ), + DeltaRCut_1 = cms.double( 0.1 ), + Propagator = cms.string( "hltESPSmartPropagator" ), + Quality_1 = cms.double( 20.0 ) + ), + PtCut = cms.double( 1.0 ), + TrackerPropagator = cms.string( "SteppingHelixPropagatorAny" ), + tkTrajLabel = cms.InputTag( "hltL3TkTracksFromL2IOHit" ), + tkTrajBeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + tkTrajMaxChi2 = cms.double( 9999.0 ), + tkTrajMaxDXYBeamSpot = cms.double( 0.2 ), + tkTrajVertex = cms.InputTag( "pixelVertices" ), + tkTrajUseVertex = cms.bool( False ) + ), + TrackLoaderParameters = cms.PSet( + PutTkTrackIntoEvent = cms.untracked.bool( False ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + SmoothTkTrack = cms.untracked.bool( False ), + MuonSeededTracksInstance = cms.untracked.string( "L2Seeded" ), + Smoother = cms.string( "hltESPKFTrajectorySmootherForMuonTrackLoader" ), + MuonUpdatorAtVertexParameters = cms.PSet( + MaxChi2 = cms.double( 1000000.0 ), + Propagator = cms.string( "hltESPSteppingHelixPropagatorOpposite" ), + BeamSpotPositionErrors = cms.vdouble( 0.1, 0.1, 5.3 ) + ), + VertexConstraint = cms.bool( False ), + DoSmoothing = cms.bool( True ) + ), + MuonCollectionLabel = cms.InputTag( 'hltL2Muons','UpdatedAtVtx' ) +) +process.hltL3TrajectorySeed = cms.EDProducer( "L3MuonTrajectorySeedCombiner", + labels = cms.VInputTag( 'hltL3TrajSeedIOHit','hltL3TrajSeedOIState','hltL3TrajSeedOIHit' ) +) +process.hltL3TrackCandidateFromL2 = cms.EDProducer( "L3TrackCandCombiner", + labels = cms.VInputTag( 'hltL3TrackCandidateFromL2IOHit','hltL3TrackCandidateFromL2OIHit','hltL3TrackCandidateFromL2OIState' ) +) +process.hltL3TkTracksMergeStep1 = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2OIState" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltL3TkTracksFromL2OIHit" ), + LostHitPenalty = cms.double( 0.0 ), + FoundHitBonus = cms.double( 100.0 ) +) +process.hltL3TkTracksFromL2 = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksMergeStep1" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltL3TkTracksFromL2IOHit" ), + LostHitPenalty = cms.double( 0.0 ), + FoundHitBonus = cms.double( 100.0 ) +) +process.hltL3MuonsLinksCombination = cms.EDProducer( "L3TrackLinksCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit','hltL3MuonsIOHit' ) +) +process.hltL3Muons = cms.EDProducer( "L3TrackCombiner", + labels = cms.VInputTag( 'hltL3MuonsOIState','hltL3MuonsOIHit','hltL3MuonsIOHit' ) +) +process.hltL3MuonCandidates = cms.EDProducer( "L3MuonCandidateProducer", + InputLinksObjects = cms.InputTag( "hltL3MuonsLinksCombination" ), + InputObjects = cms.InputTag( "hltL3Muons" ), + MuonPtOption = cms.string( "Tracker" ) +) +process.hltL3fL1sMu16L1f0L2f16QL3Filtered40Q = cms.EDFilter( "HLTMuonL3PreFilter", + MaxNormalizedChi2 = cms.double( 20.0 ), + saveTags = cms.bool( True ), + PreviousCandTag = cms.InputTag( "hltL2fL1sMu16L1f0L2Filtered16Q" ), + MinNmuonHits = cms.int32( 0 ), + MinN = cms.int32( 1 ), + MinTrackPt = cms.double( 0.0 ), + MaxEta = cms.double( 2.5 ), + MaxDXYBeamSpot = cms.double( 0.1 ), + MinNhits = cms.int32( 0 ), + MinDxySig = cms.double( -1.0 ), + NSigmaPt = cms.double( 0.0 ), + MaxDz = cms.double( 9999.0 ), + MaxPtDifference = cms.double( 9999.0 ), + MaxDr = cms.double( 2.0 ), + CandTag = cms.InputTag( "hltL3MuonCandidates" ), + MinDr = cms.double( -1.0 ), + BeamSpotTag = cms.InputTag( "hltOnlineBeamSpot" ), + MinPt = cms.double( 40.0 ) +) +process.hltBoolEnd = cms.EDFilter( "HLTBool", + result = cms.bool( True ) +) +process.hltL1sL1SingleEG20ORL1SingleEG22 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG20 OR L1_SingleEG22" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPreEle27WP80Gsf = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) @@ -2162,6 +3709,13 @@ headerUnpacking = cms.bool( True ), memUnpacking = cms.bool( True ) ) +process.hltEcalPreshowerDigis = cms.EDProducer( "ESRawToDigi", + sourceTag = cms.InputTag( "rawDataCollector" ), + debugMode = cms.untracked.bool( False ), + InstanceES = cms.string( "" ), + LookupTable = cms.FileInPath( "EventFilter/ESDigiToRaw/data/ES_lookup_table.dat" ), + ESdigiCollection = cms.string( "" ) +) process.hltEcalUncalibRecHit = cms.EDProducer( "EcalUncalibRecHitProducer", EEdigiCollection = cms.InputTag( 'hltEcalDigis','eeDigis' ), alphaEB = cms.double( 1.138 ), @@ -2256,6 +3810,357 @@ logWarningEtThreshold_EB_FE = cms.double( 50.0 ), recoverEEIsolatedChannels = cms.bool( False ) ) +process.hltEcalPreshowerRecHit = cms.EDProducer( "ESRecHitProducer", + ESRecoAlgo = cms.int32( 0 ), + ESrechitCollection = cms.string( "EcalRecHitsES" ), + algo = cms.string( "ESRecHitWorker" ), + ESdigiCollection = cms.InputTag( "hltEcalPreshowerDigis" ) +) +process.hltRechitInRegionsECAL = cms.EDProducer( "EgammaHLTRechitInRegionsProducer", + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + useUncalib = cms.bool( False ), + regionEtaMargin = cms.double( 0.14 ), + ecalhitLabels = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + regionPhiMargin = cms.double( 0.4 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1UpperThr = cms.double( 999.0 ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + productLabels = cms.vstring( 'EcalRecHitsEB', + 'EcalRecHitsEE' ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ) +) +process.hltRechitInRegionsES = cms.EDProducer( "EgammaHLTRechitInRegionsProducer", + l1LowerThr = cms.double( 5.0 ), + doIsolated = cms.bool( True ), + useUncalib = cms.bool( False ), + regionEtaMargin = cms.double( 0.14 ), + ecalhitLabels = cms.VInputTag( 'hltEcalPreshowerRecHit:EcalRecHitsES' ), + regionPhiMargin = cms.double( 0.4 ), + l1TagNonIsolated = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + l1UpperThr = cms.double( 999.0 ), + l1LowerThrIgnoreIsolation = cms.double( 0.0 ), + productLabels = cms.vstring( 'EcalRecHitsES' ), + l1TagIsolated = cms.InputTag( 'hltL1extraParticles','Isolated' ) +) +process.hltParticleFlowRecHitECALL1Seeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +process.hltParticleFlowRecHitPSL1Seeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltRechitInRegionsES','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +process.hltParticleFlowClusterPSL1Seeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSL1Seeded" ) +) +process.hltParticleFlowClusterECALUncorrectedL1Seeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALL1Seeded" ) +) +process.hltParticleFlowClusterECALL1Seeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSL1Seeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedL1Seeded" ) +) +process.hltParticleFlowSuperClusterECALL1Seeded = cms.EDProducer( "PFECALSuperClusterProducer", + PFSuperClusterCollectionEndcap = cms.string( "hltParticleFlowSuperClusterECALEndcap" ), + doSatelliteClusterMerge = cms.bool( False ), + thresh_PFClusterBarrel = cms.double( 4.0 ), + PFBasicClusterCollectionBarrel = cms.string( "hltParticleFlowBasicClusterECALBarrel" ), + useRegression = cms.bool( False ), + satelliteMajorityFraction = cms.double( 0.5 ), + thresh_PFClusterEndcap = cms.double( 4.0 ), + ESAssociation = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + PFBasicClusterCollectionPreshower = cms.string( "hltParticleFlowBasicClusterECALPreshower" ), + use_preshower = cms.bool( True ), + verbose = cms.untracked.bool( False ), + thresh_SCEt = cms.double( 4.0 ), + etawidth_SuperClusterEndcap = cms.double( 0.04 ), + phiwidth_SuperClusterEndcap = cms.double( 0.6 ), + useDynamicDPhiWindow = cms.bool( True ), + PFSuperClusterCollectionBarrel = cms.string( "hltParticleFlowSuperClusterECALBarrel" ), + regressionConfig = cms.PSet( + regressionKeyEE = cms.string( "pfscecal_EECorrection_offline" ), + ecalRecHitsEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + ecalRecHitsEB = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + regressionKeyEB = cms.string( "pfscecal_EBCorrection_offline" ), + vertexCollection = cms.InputTag( "offlinePrimaryVertices" ) + ), + applyCrackCorrections = cms.bool( False ), + satelliteClusterSeedThreshold = cms.double( 50.0 ), + etawidth_SuperClusterBarrel = cms.double( 0.04 ), + PFBasicClusterCollectionEndcap = cms.string( "hltParticleFlowBasicClusterECALEndcap" ), + PFClusters = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + thresh_PFClusterSeedBarrel = cms.double( 4.0 ), + ClusteringType = cms.string( "Mustache" ), + EnergyWeight = cms.string( "Raw" ), + BeamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + thresh_PFClusterSeedEndcap = cms.double( 4.0 ), + phiwidth_SuperClusterBarrel = cms.double( 0.6 ), + thresh_PFClusterES = cms.double( 5.0 ), + seedThresholdIsET = cms.bool( True ), + PFSuperClusterCollectionEndcapWithPreshower = cms.string( "hltParticleFlowSuperClusterECALEndcapWithPreshower" ) +) +process.hltEgammaCandidates = cms.EDProducer( "EgammaHLTRecoEcalCandidateProducers", + scIslandEndcapProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + scHybridBarrelProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ), + recoEcalCandidateCollection = cms.string( "" ) +) +process.hltEGL1SingleEG20ORL1SingleEG22Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG20ORL1SingleEG22" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltEG27EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG20ORL1SingleEG22Filter" ), + etcutEB = cms.double( 27.0 ), + etcutEE = cms.double( 27.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltEgammaClusterShape = cms.EDProducer( "EgammaHLTClusterShapeProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + ecalRechitEB = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEB' ), + ecalRechitEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), + isIeta = cms.bool( True ) +) +process.hltEle27WP80ClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.01 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG27EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) process.hltHcalDigis = cms.EDProducer( "HcalRawToDigi", UnpackZDC = cms.untracked.bool( True ), FilterDataQuality = cms.bool( True ), @@ -2520,6 +4425,1784 @@ HOGrid = cms.vdouble( ), EBGrid = cms.vdouble( ) ) +process.hltFixedGridRhoFastjetAllCaloForMuons = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 2.5 ), + pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) +) +process.hltEgammaHoverE = cms.EDProducer( "EgammaHLTBcHcalIsolationProducersRegional", + caloTowerProducer = cms.InputTag( "hltTowerMakerForAll" ), + effectiveAreaBarrel = cms.double( 0.105 ), + outerCone = cms.double( 0.14 ), + innerCone = cms.double( 0.0 ), + useSingleTower = cms.bool( False ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + depth = cms.int32( -1 ), + doRhoCorrection = cms.bool( False ), + effectiveAreaEndcap = cms.double( 0.17 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + etMin = cms.double( 0.0 ), + rhoScale = cms.double( 1.0 ), + doEtSum = cms.bool( False ) +) +process.hltEle27WP80HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.1 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEle27WP80ClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEgammaEcalPFClusterIso = cms.EDProducer( "EgammaHLTEcalPFClusterIsolationProducer", + energyEndcap = cms.double( 0.0 ), + effectiveAreaBarrel = cms.double( 0.149 ), + etaStripBarrel = cms.double( 0.0 ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + pfClusterProducer = cms.InputTag( "hltParticleFlowClusterECALL1Seeded" ), + etaStripEndcap = cms.double( 0.0 ), + drVetoBarrel = cms.double( 0.0 ), + drMax = cms.double( 0.3 ), + doRhoCorrection = cms.bool( True ), + energyBarrel = cms.double( 0.0 ), + effectiveAreaEndcap = cms.double( 0.097 ), + drVetoEndcap = cms.double( 0.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + rhoScale = cms.double( 1.0 ) +) +process.hltEle27WP80EcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.15 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.2 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEle27WP80HEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltRegionalTowerForEgamma = cms.EDProducer( "EgammaHLTCaloTowerProducer", + L1NonIsoCand = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + EMin = cms.double( 0.8 ), + EtMin = cms.double( 0.5 ), + L1IsoCand = cms.InputTag( 'hltL1extraParticles','Isolated' ), + useTowersInCone = cms.double( 0.8 ), + towerCollection = cms.InputTag( "hltTowerMakerForAll" ) +) +process.hltParticleFlowRecHitHCALForEgamma = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltRegionalTowerForEgamma" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +process.hltParticleFlowClusterHCALForEgamma = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCALForEgamma" ) +) +process.hltEgammaHcalPFClusterIso = cms.EDProducer( "EgammaHLTHcalPFClusterIsolationProducer", + energyEndcap = cms.double( 0.0 ), + useHF = cms.bool( False ), + effectiveAreaBarrel = cms.double( 0.06 ), + etaStripBarrel = cms.double( 0.0 ), + pfClusterProducerHFHAD = cms.InputTag( "hltParticleFlowClusterHFHADForEgamma" ), + rhoProducer = cms.InputTag( "hltFixedGridRhoFastjetAllCaloForMuons" ), + etaStripEndcap = cms.double( 0.0 ), + drVetoBarrel = cms.double( 0.0 ), + pfClusterProducerHCAL = cms.InputTag( "hltParticleFlowClusterHCALForEgamma" ), + drMax = cms.double( 0.3 ), + doRhoCorrection = cms.bool( True ), + energyBarrel = cms.double( 0.0 ), + effectiveAreaEndcap = cms.double( 0.089 ), + drVetoEndcap = cms.double( 0.0 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + rhoMax = cms.double( 9.9999999E7 ), + pfClusterProducerHFEM = cms.InputTag( "hltParticleFlowClusterHFEMForEgamma" ), + rhoScale = cms.double( 1.0 ) +) +process.hltEle27WP80HcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.11 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.11 ), + thrRegularEB = cms.double( 999999.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEle27WP80EcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEgammaElectronPixelSeeds = cms.EDProducer( "ElectronSeedProducer", + endcapSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + SeedConfiguration = cms.PSet( + searchInTIDTEC = cms.bool( True ), + HighPtThreshold = cms.double( 35.0 ), + r2MinF = cms.double( -0.15 ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + DeltaPhi1Low = cms.double( 0.23 ), + DeltaPhi1High = cms.double( 0.08 ), + ePhiMin1 = cms.double( -0.08 ), + PhiMin2 = cms.double( -0.004 ), + LowPtThreshold = cms.double( 3.0 ), + RegionPSet = cms.PSet( + deltaPhiRegion = cms.double( 0.4 ), + originHalfLength = cms.double( 15.0 ), + useZInVertex = cms.bool( True ), + deltaEtaRegion = cms.double( 0.1 ), + ptMin = cms.double( 1.5 ), + originRadius = cms.double( 0.2 ), + VertexProducer = cms.InputTag( "dummyVertices" ) + ), + maxHOverE = cms.double( 999999.0 ), + dynamicPhiRoad = cms.bool( False ), + ePhiMax1 = cms.double( 0.04 ), + DeltaPhi2 = cms.double( 0.004 ), + measurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SizeWindowENeg = cms.double( 0.675 ), + nSigmasDeltaZ1 = cms.double( 5.0 ), + rMaxI = cms.double( 0.2 ), + PhiMax2 = cms.double( 0.004 ), + preFilteredSeeds = cms.bool( True ), + r2MaxF = cms.double( 0.15 ), + pPhiMin1 = cms.double( -0.04 ), + initialSeeds = cms.InputTag( "noSeedsHere" ), + pPhiMax1 = cms.double( 0.08 ), + hbheModule = cms.string( "hbhereco" ), + SCEtCut = cms.double( 3.0 ), + z2MaxB = cms.double( 0.09 ), + fromTrackerSeeds = cms.bool( True ), + hcalRecHits = cms.InputTag( "hltHbhereco" ), + z2MinB = cms.double( -0.09 ), + hbheInstance = cms.string( "" ), + rMinI = cms.double( -0.2 ), + hOverEConeSize = cms.double( 0.0 ), + hOverEHBMinE = cms.double( 999999.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + applyHOverECut = cms.bool( False ), + hOverEHFMinE = cms.double( 999999.0 ), + measurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + barrelSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ) +) +process.hltEle27WP80PixelMatchFilter = cms.EDFilter( "HLTElectronPixelMatchFilter", + saveTags = cms.bool( False ), + s2_threshold = cms.double( 0.4 ), + npixelmatchcut = cms.double( 1.0 ), + tanhSO10InterThres = cms.double( 1.0 ), + doIsolated = cms.bool( True ), + s_a_phi1B = cms.double( 0.0069 ), + s_a_phi1F = cms.double( 0.0076 ), + s_a_phi1I = cms.double( 0.0088 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + candTag = cms.InputTag( "hltEle27WP80HcalIsoFilter" ), + tanhSO10ForwardThres = cms.double( 1.0 ), + L1IsoPixelSeedsTag = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + L1NonIsoCand = cms.InputTag( "" ), + ncandcut = cms.int32( 1 ), + tanhSO10BarrelThres = cms.double( 0.35 ), + s_a_rF = cms.double( 0.04 ), + L1NonIsoPixelSeedsTag = cms.InputTag( "" ), + s_a_rI = cms.double( 0.027 ), + s_a_phi2I = cms.double( 7.0E-4 ), + useS = cms.bool( False ), + s_a_phi2B = cms.double( 3.7E-4 ), + s_a_zB = cms.double( 0.012 ), + s_a_phi2F = cms.double( 0.00906 ) +) +process.hltEgammaCkfTrackCandidatesForGSF = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( True ), + useHitsSplitting = cms.bool( True ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( True ), + maxNSeeds = cms.uint32( 1000000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetTrajectoryBuilderForElectrons" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltEgammaGsfTracks = cms.EDProducer( "GsfTrackProducer", + src = cms.InputTag( "hltEgammaCkfTrackCandidatesForGSF" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + producer = cms.string( "" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPGsfElectronFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "hltESPMeasurementTracker" ), + AlgorithmName = cms.string( "gsf" ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + Propagator = cms.string( "hltESPFwdElectronPropagator" ) +) +process.hltEgammaGsfElectrons = cms.EDProducer( "EgammaHLTPixelMatchElectronProducers", + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseGsfTracks = cms.bool( True ), + TrackProducer = cms.InputTag( "" ), + GsfTrackProducer = cms.InputTag( "hltEgammaGsfTracks" ) +) +process.hltEgammaGsfTrackVars = cms.EDProducer( "EgammaHLTGsfTrackVarProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + upperTrackNrToRemoveCut = cms.int32( 9999 ), + lowerTrackNrToRemoveCut = cms.int32( -1 ), + inputCollection = cms.InputTag( "hltEgammaGsfTracks" ) +) +process.hltEle27WP80GsfOneOEMinusOneOPFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.05 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.05 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','OneOESuperMinusOneOP' ), + candTag = cms.InputTag( "hltEle27WP80PixelMatchFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEle27WP80GsfDetaFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.007 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.007 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Deta' ), + candTag = cms.InputTag( "hltEle27WP80GsfOneOEMinusOneOPFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEle27WP80GsfDphiFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.06 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Dphi' ), + candTag = cms.InputTag( "hltEle27WP80GsfDetaFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltElectronsVertex = cms.EDProducer( "VertexFromTrackProducer", + verbose = cms.untracked.bool( False ), + useTriggerFilterElectrons = cms.bool( False ), + beamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + isRecoCandidate = cms.bool( True ), + trackLabel = cms.InputTag( "hltEgammaGsfElectrons" ), + useTriggerFilterMuons = cms.bool( False ), + useBeamSpot = cms.bool( True ), + vertexLabel = cms.InputTag( "None" ), + triggerFilterElectronsSrc = cms.InputTag( "None" ), + triggerFilterMuonsSrc = cms.InputTag( "None" ), + useVertex = cms.bool( False ) +) +process.hltPixelTracksElectrons = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalTrackingRegionWithVerticesProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 0.3 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + useFixedError = cms.bool( True ), + sigmaZVertex = cms.double( 3.0 ), + fixedError = cms.double( 0.2 ), + VertexCollection = cms.InputTag( "hltElectronsVertex" ), + useFoundVertices = cms.bool( True ), + nSigmaZ = cms.double( 4.0 ), + useFakeVertices = cms.bool( True ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +process.hltPixelVerticesElectrons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracksElectrons" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0ElectronsPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracksElectrons" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0ElectronsPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1ElectronsPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1ElectronsPixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1ElectronsPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1ElectronsTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ElectronsTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ElectronsTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0ElectronsTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2ElectronsPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2ElectronsPixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2ElectronsPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2ElectronsCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2IsoElectron" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2ElectronsCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForElectrons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2ElectronsTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltEgammaEleGsfTrackIso = cms.EDProducer( "EgammaHLTElectronTrackIsolationProducers", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoVetoConeSizeBarrel = cms.double( 0.03 ), + useGsfTrack = cms.bool( True ), + useSCRefs = cms.bool( True ), + trackProducer = cms.InputTag( "hltIter2MergedForElectrons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + electronProducer = cms.InputTag( "hltEgammaGsfElectrons" ), + egTrkIsoConeSize = cms.double( 0.3 ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSizeEndcap = cms.double( 0.03 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 0.15 ) +) +process.hltEle27WP80GsfTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.05 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEleGsfTrackIso" ), + candTag = cms.InputTag( "hltEle27WP80GsfDphiFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), + etcutEB = cms.double( 20.0 ), + etcutEE = cms.double( 20.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.04 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.024 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG20EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 5.5 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 5.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPixelTracks = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 24.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +process.hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +process.hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPrePFJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) process.hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", Active_Area_Repeats = cms.int32( 5 ), doAreaFastjet = cms.bool( False ), @@ -2608,9 +6291,9 @@ src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) ) -process.hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", +process.hltSingleCaloJet200 = cms.EDFilter( "HLT1CaloJet", saveTags = cms.bool( True ), - MinPt = cms.double( 260.0 ), + MinPt = cms.double( 200.0 ), MinN = cms.int32( 1 ), MaxEta = cms.double( 5.0 ), MinMass = cms.double( -1.0 ), @@ -2618,22 +6301,2536 @@ MinE = cms.double( -1.0 ), triggerType = cms.int32( 85 ) ) -process.hltBoolEnd = cms.EDFilter( "HLTBool", - result = cms.bool( True ) -) -process.hltPrePhysics = cms.EDFilter( "HLTPrescaler", - L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), - offset = cms.uint32( 0 ) -) -process.hltFEDSelector = cms.EDProducer( "EvFFEDSelector", - inputTag = cms.InputTag( "rawDataCollector" ), - fedList = cms.vuint32( 1023 ) -) -process.hltTriggerSummaryAOD = cms.EDProducer( "TriggerSummaryProducerAOD", - processName = cms.string( "@" ) -) -process.hltTriggerSummaryRAW = cms.EDProducer( "TriggerSummaryProducerRAW", - processName = cms.string( "@" ) +process.hltTowerMakerForPF = cms.EDProducer( "CaloTowersCreator", + EBSumThreshold = cms.double( 0.2 ), + MomHBDepth = cms.double( 0.2 ), + UseEtEBTreshold = cms.bool( False ), + hfInput = cms.InputTag( "hltHfreco" ), + AllowMissingInputs = cms.bool( False ), + MomEEDepth = cms.double( 0.0 ), + EESumThreshold = cms.double( 0.45 ), + HBGrid = cms.vdouble( ), + HcalAcceptSeverityLevelForRejectedHit = cms.uint32( 9999 ), + HBThreshold = cms.double( 0.4 ), + EcalSeveritiesToBeUsedInBadTowers = cms.vstring( ), + UseEcalRecoveredHits = cms.bool( False ), + MomConstrMethod = cms.int32( 1 ), + MomHEDepth = cms.double( 0.4 ), + HcalThreshold = cms.double( -1000.0 ), + HF2Weights = cms.vdouble( ), + HOWeights = cms.vdouble( ), + EEGrid = cms.vdouble( ), + UseSymEBTreshold = cms.bool( False ), + EEWeights = cms.vdouble( ), + EEWeight = cms.double( 1.0 ), + UseHO = cms.bool( False ), + HBWeights = cms.vdouble( ), + HF1Weight = cms.double( 1.0 ), + HF2Grid = cms.vdouble( ), + HEDWeights = cms.vdouble( ), + HEDGrid = cms.vdouble( ), + EBWeight = cms.double( 1.0 ), + HF1Grid = cms.vdouble( ), + EBWeights = cms.vdouble( ), + HOWeight = cms.double( 1.0 ), + HESWeight = cms.double( 1.0 ), + HESThreshold = cms.double( 0.4 ), + hbheInput = cms.InputTag( "hltHbhereco" ), + HF2Weight = cms.double( 1.0 ), + HF2Threshold = cms.double( 1.8 ), + HcalAcceptSeverityLevel = cms.uint32( 11 ), + EEThreshold = cms.double( 0.3 ), + HOThresholdPlus1 = cms.double( 1.1 ), + HOThresholdPlus2 = cms.double( 1.1 ), + HF1Weights = cms.vdouble( ), + hoInput = cms.InputTag( "hltHoreco" ), + HF1Threshold = cms.double( 1.2 ), + HOThresholdMinus1 = cms.double( 1.1 ), + HESGrid = cms.vdouble( ), + EcutTower = cms.double( -1000.0 ), + UseRejectedRecoveredEcalHits = cms.bool( False ), + UseEtEETreshold = cms.bool( False ), + HESWeights = cms.vdouble( ), + EcalRecHitSeveritiesToBeExcluded = cms.vstring( 'kTime', + 'kWeird', + 'kBad' ), + HEDWeight = cms.double( 1.0 ), + UseSymEETreshold = cms.bool( False ), + HEDThreshold = cms.double( 0.4 ), + EBThreshold = cms.double( 0.07 ), + UseRejectedHitsOnly = cms.bool( False ), + UseHcalRecoveredHits = cms.bool( True ), + HOThresholdMinus2 = cms.double( 1.1 ), + HOThreshold0 = cms.double( 1.1 ), + ecalInputs = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + UseRejectedRecoveredHcalHits = cms.bool( False ), + MomEBDepth = cms.double( 0.3 ), + HBWeight = cms.double( 1.0 ), + HOGrid = cms.vdouble( ), + EBGrid = cms.vdouble( ) +) +process.hltAK4CaloJetsPF = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForPF" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltAK4CaloJetsPFEt5 = cms.EDFilter( "EtMinCaloJetSelector", + filter = cms.bool( False ), + src = cms.InputTag( "hltAK4CaloJetsPF" ), + etMin = cms.double( 5.0 ) +) +process.hltPixelVertices = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparerForIT" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0PFLowPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( False ), + InputVertexCollection = cms.InputTag( "hltPixelVertices" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFLowPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltTrackIter0RefsForJets4Iter1 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter0TrackJets4Iter1 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTrackIter0RefsForJets4Iter1" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter0TrackAndTauJets4Iter1 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter0TrackJets4Iter1" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ) +) +process.hltIter1ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1PixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + precise = cms.bool( True ), + deltaPhi = cms.double( 1.0 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.1 ), + originRadius = cms.double( 0.05 ), + measurementTrackerName = cms.string( "hltIter1MaskedMeasurementTrackerEvent" ), + deltaEta = cms.double( 1.0 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + searchOpt = cms.bool( True ), + input = cms.InputTag( "hltIter0TrackAndTauJets4Iter1" ), + ptMin = cms.double( 0.5 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1TrackRefsForJets4Iter2 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter1Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter1TrackJets4Iter2 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter1TrackRefsForJets4Iter2" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.4 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter1TrackAndTauJets4Iter2 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.4 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter1TrackJets4Iter2" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter1Merged" ) +) +process.hltIter2ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2PixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.025 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 1.2 ), + measurementTrackerName = cms.string( "hltIter2MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.8 ), + deltaEta = cms.double( 0.8 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter1TrackAndTauJets4Iter2" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2TrackRefsForJets4Iter3 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter2Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter2TrackJets4Iter3 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter2TrackRefsForJets4Iter3" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 3.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter2TrackAndTauJets4Iter3 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 3.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter2TrackJets4Iter3" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter2Merged" ) +) +process.hltIter3ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter2PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter2ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter3MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter3ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter3LayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg', + 'BPix2+FPix1_pos+FPix2_pos', + 'BPix2+FPix1_neg+FPix2_neg', + 'FPix1_pos+FPix2_pos+TEC1_pos', + 'FPix1_neg+FPix2_neg+TEC1_neg', + 'FPix2_pos+TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC2_neg+TEC3_neg', + 'BPix2+BPix3+TIB1', + 'BPix2+BPix3+TIB2', + 'BPix1+BPix3+TIB1', + 'BPix1+BPix3+TIB2', + 'BPix1+BPix2+TIB1', + 'BPix1+BPix2+TIB2' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) +) +process.hltIter3PFlowMixedSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter3MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter2TrackAndTauJets4Iter3" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter3LayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter3PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter3PFlowMixedSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter3PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter3PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter3PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter3" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter3PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.85, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter3PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter3PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter3Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter2Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter3TrackRefsForJets4Iter4 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter3Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter3TrackJets4Iter4 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter3TrackRefsForJets4Iter4" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 4.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter3TrackAndTauJets4Iter4 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 4.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter3TrackJets4Iter4" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.0 ), + etaMaxCaloJet = cms.double( 2.0 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter3Merged" ) +) +process.hltIter4ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter3PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter3ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 70.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter4MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter4ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter4PixelLessLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'TIB1+TIB2+MTIB3', + 'TIB1+TIB2+MTID1_pos', + 'TIB1+TIB2+MTID1_neg', + 'TID1_pos+TID2_pos+TID3_pos', + 'TID1_neg+TID2_neg+TID3_neg', + 'TID1_pos+TID2_pos+MTID3_pos', + 'TID1_neg+TID2_neg+MTID3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ) + ), + MTID = cms.PSet( + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + FPix = cms.PSet( ), + MTEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + MTIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TID = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TOB = cms.PSet( ), + BPix = cms.PSet( ), + TIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ) +) +process.hltIter4PFlowPixelLessSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 1.0 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter4MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 12.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter3TrackAndTauJets4Iter4" ) + ), + RegionPsetFomBeamSpotBlockFixedZ = cms.PSet( + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originHalfLength = cms.double( 21.2 ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ) + ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "PixelClusterShapeSeedComparitor" ), + FilterAtHelixStage = cms.bool( True ), + FilterPixelHits = cms.bool( False ), + FilterStripHits = cms.bool( False ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ) + ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardMultiHitGenerator" ), + GeneratorPSet = cms.PSet( + ComponentName = cms.string( "MultiHitGeneratorFromChi2" ), + useFixedPreFiltering = cms.bool( False ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.0 ), + extraHitRZtolerance = cms.double( 0.0 ), + extraZKDBox = cms.double( 0.2 ), + extraRKDBox = cms.double( 0.2 ), + extraPhiKDBox = cms.double( 0.005 ), + fnSigmaRZ = cms.double( 2.0 ), + refitHits = cms.bool( True ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ), + maxChi2 = cms.double( 5.0 ), + chi2VsPtCut = cms.bool( True ), + pt_interv = cms.vdouble( 0.4, 0.7, 1.0, 2.0 ), + chi2_cuts = cms.vdouble( 3.0, 4.0, 5.0, 5.0 ), + debug = cms.bool( False ), + detIdsToDebug = cms.vint32( 0, 0, 0 ), + maxElement = cms.uint32( 100000 ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + SeedingLayers = cms.InputTag( "hltIter4PixelLessLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "WithTrackAngle" ) +) +process.hltIter4PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter4PFlowPixelLessSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter4PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter4PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter4PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter4" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter4PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.25 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 0 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter4PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter4Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltPFMuonMerging = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4Merged" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltMuonLinks = cms.EDProducer( "MuonLinksProducerForHLT", + pMin = cms.double( 2.5 ), + InclusiveTrackerTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + shareHitFraction = cms.double( 0.8 ), + LinkCollection = cms.InputTag( "hltL3MuonsLinksCombination" ), + ptMin = cms.double( 2.5 ) +) +process.hltMuons = cms.EDProducer( "MuonIdProducer", + TrackExtractorPSet = cms.PSet( + Diff_z = cms.double( 0.2 ), + inputTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + BeamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + ComponentName = cms.string( "TrackExtractor" ), + DR_Max = cms.double( 1.0 ), + Diff_r = cms.double( 0.1 ), + Chi2Prob_Min = cms.double( -1.0 ), + DR_Veto = cms.double( 0.01 ), + NHits_Min = cms.uint32( 0 ), + Chi2Ndof_Max = cms.double( 1.0E64 ), + Pt_Min = cms.double( -1.0 ), + DepositLabel = cms.untracked.string( "" ), + BeamlineOption = cms.string( "BeamSpotFromEvent" ) + ), + maxAbsEta = cms.double( 3.0 ), + fillGlobalTrackRefits = cms.bool( False ), + arbitrationCleanerOptions = cms.PSet( + Clustering = cms.bool( True ), + ME1a = cms.bool( True ), + ClusterDPhi = cms.double( 0.6 ), + OverlapDTheta = cms.double( 0.02 ), + Overlap = cms.bool( True ), + OverlapDPhi = cms.double( 0.0786 ), + ClusterDTheta = cms.double( 0.02 ) + ), + globalTrackQualityInputTag = cms.InputTag( "glbTrackQual" ), + addExtraSoftMuons = cms.bool( False ), + debugWithTruthMatching = cms.bool( False ), + CaloExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + DR_Max = cms.double( 1.0 ), + DepositInstanceLabels = cms.vstring( 'ecal', + 'hcal', + 'ho' ), + Noise_HE = cms.double( 0.2 ), + NoiseTow_EB = cms.double( 0.04 ), + NoiseTow_EE = cms.double( 0.15 ), + Threshold_H = cms.double( 0.5 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + Threshold_E = cms.double( 0.2 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + DepositLabel = cms.untracked.string( "Cal" ), + UseRecHitsFlag = cms.bool( False ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 1.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 1.0 ), + dREcalPreselection = cms.double( 1.0 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 1.0 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + Threshold_HO = cms.double( 0.5 ), + Noise_EE = cms.double( 0.1 ), + Noise_EB = cms.double( 0.025 ), + DR_Veto_H = cms.double( 0.1 ), + CenterConeOnCalIntersection = cms.bool( False ), + ComponentName = cms.string( "CaloExtractorByAssociator" ), + Noise_HB = cms.double( 0.2 ), + DR_Veto_E = cms.double( 0.07 ), + DR_Veto_HO = cms.double( 0.1 ), + Noise_HO = cms.double( 0.2 ) + ), + runArbitrationCleaner = cms.bool( False ), + fillEnergy = cms.bool( True ), + TrackerKinkFinderParameters = cms.PSet( + usePosition = cms.bool( False ), + diagonalOnly = cms.bool( False ) + ), + TimingFillerParameters = cms.PSet( + UseDT = cms.bool( True ), + ErrorDT = cms.double( 6.0 ), + EcalEnergyCut = cms.double( 0.4 ), + ErrorEB = cms.double( 2.085 ), + ErrorCSC = cms.double( 7.4 ), + CSCTimingParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + CSCTimeOffset = cms.double( 0.0 ), + CSCStripTimeOffset = cms.double( 0.0 ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + UseStripTime = cms.bool( True ), + CSCStripError = cms.double( 7.0 ), + CSCWireError = cms.double( 8.6 ), + CSCWireTimeOffset = cms.double( 0.0 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ), + PruneCut = cms.double( 100.0 ), + UseWireTime = cms.bool( True ) + ), + DTTimingParameters = cms.PSet( + HitError = cms.double( 6.0 ), + DoWireCorr = cms.bool( False ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + PruneCut = cms.double( 10000.0 ), + RequireBothProjections = cms.bool( False ), + HitsMin = cms.int32( 5 ), + DTTimeOffset = cms.double( 2.7 ), + DropTheta = cms.bool( True ), + UseSegmentT0 = cms.bool( False ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ) + ), + ErrorEE = cms.double( 6.95 ), + UseCSC = cms.bool( True ), + UseECAL = cms.bool( True ) + ), + inputCollectionTypes = cms.vstring( 'inner tracks', + 'links', + 'outer tracks' ), + minCaloCompatibility = cms.double( 0.6 ), + ecalDepositName = cms.string( "ecal" ), + minP = cms.double( 10.0 ), + fillIsolation = cms.bool( True ), + jetDepositName = cms.string( "jets" ), + hoDepositName = cms.string( "ho" ), + writeIsoDeposits = cms.bool( False ), + maxAbsPullX = cms.double( 4.0 ), + maxAbsPullY = cms.double( 9999.0 ), + minPt = cms.double( 10.0 ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 9999.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( True ), + dREcal = cms.double( 9999.0 ), + dREcalPreselection = cms.double( 0.05 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( True ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.2 ), + useMuon = cms.bool( True ), + useCalo = cms.bool( False ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( True ) + ), + JetExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + ExcludeMuonVeto = cms.bool( True ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 0.5 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 0.5 ), + dREcalPreselection = cms.double( 0.5 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.5 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + ComponentName = cms.string( "JetExtractor" ), + DR_Max = cms.double( 1.0 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + JetCollectionLabel = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + DR_Veto = cms.double( 0.1 ), + Threshold = cms.double( 5.0 ) + ), + fillGlobalTrackQuality = cms.bool( False ), + minPCaloMuon = cms.double( 1.0E9 ), + maxAbsDy = cms.double( 9999.0 ), + fillCaloCompatibility = cms.bool( True ), + fillMatching = cms.bool( True ), + MuonCaloCompatibility = cms.PSet( + allSiPMHO = cms.bool( False ), + PionTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_pions_lowPt_3_1_norm.root" ), + MuonTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_muons_lowPt_3_1_norm.root" ), + delta_eta = cms.double( 0.02 ), + delta_phi = cms.double( 0.02 ) + ), + fillTrackerKink = cms.bool( False ), + hcalDepositName = cms.string( "hcal" ), + sigmaThresholdToFillCandidateP4WithGlobalFit = cms.double( 2.0 ), + inputCollectionLabels = cms.VInputTag( 'hltPFMuonMerging','hltMuonLinks','hltL2Muons' ), + trackDepositName = cms.string( "tracker" ), + maxAbsDx = cms.double( 3.0 ), + ptThresholdToFillCandidateP4WithGlobalFit = cms.double( 200.0 ), + minNumberOfMatches = cms.int32( 1 ) +) +process.hltParticleFlowRecHitECALUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +process.hltParticleFlowRecHitHCAL = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltTowerMakerForPF" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +process.hltParticleFlowRecHitPSUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +process.hltParticleFlowClusterECALUncorrectedUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALUnseeded" ) +) +process.hltParticleFlowClusterPSUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSUnseeded" ) +) +process.hltParticleFlowClusterECALUnseeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedUnseeded" ) +) +process.hltParticleFlowClusterHCAL = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCAL" ) +) +process.hltParticleFlowClusterHFEM = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_EM" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_EM" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.19 ), + singleSpikeThresh = cms.double( 80.0 ), + detector = cms.string( "HF_EM" ), + minS4S1_a = cms.double( 0.11 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_EM" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFEM' ) +) +process.hltParticleFlowClusterHFHAD = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_HAD" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_HAD" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.08 ), + singleSpikeThresh = cms.double( 120.0 ), + detector = cms.string( "HF_HAD" ), + minS4S1_a = cms.double( 0.045 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_HAD" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFHAD' ) +) +process.hltLightPFTracks = cms.EDProducer( "LightPFTrackProducer", + TrackQuality = cms.string( "none" ), + UseQuality = cms.bool( False ), + TkColList = cms.VInputTag( 'hltPFMuonMerging' ) +) +process.hltParticleFlowBlock = cms.EDProducer( "PFBlockProducer", + debug = cms.untracked.bool( False ), + linkDefinitions = cms.VPSet( + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS1:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS2:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:ECAL" ), + linkerName = cms.string( "TrackAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:HCAL" ), + linkerName = cms.string( "TrackAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "ECAL:HCAL" ), + linkerName = cms.string( "ECALAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "HFEM:HFHAD" ), + linkerName = cms.string( "HFEMAndHFHADLinker" ) + ) + ), + elementImporters = cms.VPSet( + cms.PSet( importerName = cms.string( "GeneralTracksImporter" ), + useIterativeTracking = cms.bool( False ), + source = cms.InputTag( "hltLightPFTracks" ), + NHitCuts_byTrackAlgo = cms.vuint32( 3, 3, 3, 3, 3 ), + muonSrc = cms.InputTag( "hltMuons" ), + DPtOverPtCuts_byTrackAlgo = cms.vdouble( 0.5, 0.5, 0.5, 0.5, 0.5 ) + ), + cms.PSet( importerName = cms.string( "ECALClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterECALUnseeded" ), + BCtoPFCMap = cms.InputTag( "" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHCAL" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFEM" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFHAD" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ) + ) + ), + verbose = cms.untracked.bool( False ) +) +process.hltParticleFlow = cms.EDProducer( "PFProducer", + photon_SigmaiEtaiEta_endcap = cms.double( 0.034 ), + minPtForPostCleaning = cms.double( 20.0 ), + pf_nsigma_ECAL = cms.double( 0.0 ), + GedPhotonValueMap = cms.InputTag( 'tmpGedPhotons','valMapPFEgammaCandToPhoton' ), + sumPtTrackIsoForPhoton = cms.double( -1.0 ), + metFactorForFakes = cms.double( 4.0 ), + muon_HO = cms.vdouble( 0.9, 0.9 ), + electron_missinghits = cms.uint32( 1 ), + metSignificanceForCleaning = cms.double( 3.0 ), + usePFPhotons = cms.bool( False ), + dptRel_DispVtx = cms.double( 10.0 ), + nTrackIsoForEgammaSC = cms.uint32( 2 ), + pf_nsigma_HCAL = cms.double( 1.0 ), + cosmicRejectionDistance = cms.double( 1.0 ), + useEGammaFilters = cms.bool( False ), + useEGammaElectrons = cms.bool( False ), + nsigma_TRACK = cms.double( 1.0 ), + useEGammaSupercluster = cms.bool( False ), + sumPtTrackIsoForEgammaSC_barrel = cms.double( 4.0 ), + eventFractionForCleaning = cms.double( 0.8 ), + usePFDecays = cms.bool( False ), + rejectTracks_Step45 = cms.bool( False ), + eventFractionForRejection = cms.double( 0.8 ), + photon_MinEt = cms.double( 10.0 ), + usePFNuclearInteractions = cms.bool( False ), + maxSignificance = cms.double( 2.5 ), + electron_iso_mva_endcap = cms.double( -0.1075 ), + debug = cms.untracked.bool( False ), + pf_convID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_pfConversionAug0411.txt" ), + calibHF_eta_step = cms.vdouble( 0.0, 2.9, 3.0, 3.2, 4.2, 4.4, 4.6, 4.8, 5.2, 5.4 ), + ptErrorScale = cms.double( 8.0 ), + minSignificance = cms.double( 2.5 ), + minMomentumForPunchThrough = cms.double( 100.0 ), + pf_conv_mvaCut = cms.double( 0.0 ), + useCalibrationsFromDB = cms.bool( True ), + usePFElectrons = cms.bool( False ), + electron_iso_combIso_endcap = cms.double( 10.0 ), + photon_combIso = cms.double( 10.0 ), + electron_iso_mva_barrel = cms.double( -0.1875 ), + postHFCleaning = cms.bool( False ), + factors_45 = cms.vdouble( 10.0, 100.0 ), + cleanedHF = cms.VInputTag( 'hltParticleFlowRecHitHCAL:Cleaned','hltParticleFlowClusterHFHAD:Cleaned','hltParticleFlowClusterHFEM:Cleaned' ), + coneEcalIsoForEgammaSC = cms.double( 0.3 ), + minSignificanceReduction = cms.double( 1.4 ), + photon_SigmaiEtaiEta_barrel = cms.double( 0.0125 ), + calibHF_b_HADonly = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + minPixelHits = cms.int32( 1 ), + maxDPtOPt = cms.double( 1.0 ), + useHO = cms.bool( False ), + pf_electron_output_col = cms.string( "electrons" ), + electron_noniso_mvaCut = cms.double( -0.1 ), + GedElectronValueMap = cms.InputTag( "gedGsfElectronsTmp" ), + useVerticesForNeutral = cms.bool( True ), + pf_Res_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFRes.root" ), + PFEGammaCandidates = cms.InputTag( "particleFlowEGamma" ), + sumPtTrackIsoSlopeForPhoton = cms.double( -1.0 ), + coneTrackIsoForEgammaSC = cms.double( 0.3 ), + minDeltaMet = cms.double( 0.4 ), + pt_Error = cms.double( 1.0 ), + useProtectionsForJetMET = cms.bool( True ), + metFactorForRejection = cms.double( 4.0 ), + sumPtTrackIsoForEgammaSC_endcap = cms.double( 4.0 ), + calibHF_use = cms.bool( False ), + verbose = cms.untracked.bool( False ), + usePFConversions = cms.bool( False ), + trackQuality = cms.string( "highPurity" ), + calibPFSCEle_endcap = cms.vdouble( 1.153, -16.5975, 5.668, -0.1772, 16.22, 7.326, 0.0483, -4.068, 9.406 ), + metFactorForCleaning = cms.double( 4.0 ), + eventFactorForCosmics = cms.double( 10.0 ), + egammaElectrons = cms.InputTag( "" ), + minEnergyForPunchThrough = cms.double( 100.0 ), + minTrackerHits = cms.int32( 8 ), + iCfgCandConnector = cms.PSet( + bCalibSecondary = cms.bool( False ), + bCalibPrimary = cms.bool( False ), + bCorrect = cms.bool( False ), + nuclCalibFactors = cms.vdouble( 0.8, 0.15, 0.5, 0.5, 0.05 ) + ), + rejectTracks_Bad = cms.bool( False ), + pf_electronID_crackCorrection = cms.bool( False ), + pf_locC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFClusterCorr.root" ), + calibHF_a_EMonly = cms.vdouble( 0.96945, 0.96701, 0.76309, 0.82268, 0.87583, 0.89718, 0.98674, 1.4681, 1.458, 1.458 ), + muons = cms.InputTag( "hltMuons" ), + metFactorForHighEta = cms.double( 25.0 ), + minHFCleaningPt = cms.double( 5.0 ), + muon_HCAL = cms.vdouble( 3.0, 3.0 ), + pf_electron_mvaCut = cms.double( -0.1 ), + ptFactorForHighEta = cms.double( 2.0 ), + maxDeltaPhiPt = cms.double( 7.0 ), + pf_electronID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_PfElectrons23Jan_IntToFloat.txt" ), + sumEtEcalIsoForEgammaSC_endcap = cms.double( 2.0 ), + calibHF_b_EMHAD = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + pf_GlobC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFGlobalCorr.root" ), + photon_HoE = cms.double( 0.1 ), + sumEtEcalIsoForEgammaSC_barrel = cms.double( 1.0 ), + calibPFSCEle_Fbrem_endcap = cms.vdouble( 0.9, 6.5, -0.0692932, 0.101776, 0.995338, -0.00236548, 0.874998, 1.653, -0.0750184, 0.147, 0.923165, 4.74665E-4, 1.10782 ), + punchThroughFactor = cms.double( 3.0 ), + algoType = cms.uint32( 0 ), + electron_iso_combIso_barrel = cms.double( 10.0 ), + postMuonCleaning = cms.bool( True ), + calibPFSCEle_barrel = cms.vdouble( 1.004, -1.536, 22.88, -1.467, 0.3555, 0.6227, 14.65, 2051.0, 25.0, 0.9932, -0.5444, 0.0, 0.5438, 0.7109, 7.645, 0.2904, 0.0 ), + electron_protectionsForJetMET = cms.PSet( + maxE = cms.double( 50.0 ), + maxTrackPOverEele = cms.double( 1.0 ), + maxEcalEOverP_2 = cms.double( 0.2 ), + maxHcalEOverEcalE = cms.double( 0.1 ), + maxEcalEOverP_1 = cms.double( 0.5 ), + maxHcalEOverP = cms.double( 1.0 ), + maxEcalEOverPRes = cms.double( 0.2 ), + maxHcalE = cms.double( 10.0 ), + maxEeleOverPout = cms.double( 0.2 ), + maxNtracks = cms.double( 3.0 ), + maxEleHcalEOverEcalE = cms.double( 0.1 ), + maxDPhiIN = cms.double( 0.1 ), + maxEeleOverPoutRes = cms.double( 0.5 ) + ), + electron_iso_pt = cms.double( 10.0 ), + isolatedElectronID_mvaWeightFile = cms.string( "RecoEgamma/ElectronIdentification/data/TMVA_BDTSimpleCat_17Feb2011.weights.xml" ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + X0_Map = cms.string( "RecoParticleFlow/PFProducer/data/allX0histos.root" ), + calibPFSCEle_Fbrem_barrel = cms.vdouble( 0.6, 6.0, -0.0255975, 0.0576727, 0.975442, -5.46394E-4, 1.26147, 25.0, -0.02025, 0.04537, 0.9728, -8.962E-4, 1.172 ), + blocks = cms.InputTag( "hltParticleFlowBlock" ), + punchThroughMETFactor = cms.double( 4.0 ), + metSignificanceForRejection = cms.double( 4.0 ), + photon_protectionsForJetMET = cms.PSet( + sumPtTrackIsoSlope = cms.double( 0.001 ), + sumPtTrackIso = cms.double( 2.0 ) + ), + usePhotonReg = cms.bool( False ), + dzPV = cms.double( 0.2 ), + calibHF_a_EMHAD = cms.vdouble( 1.42215, 1.00496, 0.68961, 0.81656, 0.98504, 0.98504, 1.00802, 1.0593, 1.4576, 1.4576 ), + useRegressionFromDB = cms.bool( False ), + muon_ECAL = cms.vdouble( 0.5, 0.5 ), + usePFSCEleCalib = cms.bool( True ) +) +process.hltAK4PFJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "PFJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltParticleFlow" ), + inputEtMin = cms.double( 0.0 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 0.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltFixedGridRhoFastjetAll = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 5.0 ), + pfCandidatesTag = cms.InputTag( "hltParticleFlow" ) +) +process.hltAK4PFJetsCorrected = cms.EDProducer( "PFJetCorrectionProducer", + src = cms.InputTag( "hltAK4PFJets" ), + correctors = cms.vstring( 'hltESPAK4PFCorrection' ) +) +process.hltPFJetsCorrectedMatchedToCaloJets200 = cms.EDProducer( "PFJetsMatchedToFilteredCaloJetsProducer", + DeltaR = cms.double( 0.5 ), + CaloJetFilter = cms.InputTag( "hltSingleCaloJet200" ), + TriggerType = cms.int32( 85 ), + PFJetSrc = cms.InputTag( "hltAK4PFJetsCorrected" ) +) +process.hltSinglePFJet260 = cms.EDFilter( "HLT1PFJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltPFJetsCorrectedMatchedToCaloJets200" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +process.hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrectedIDPassed" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +process.hltPrePhysics = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltFEDSelector = cms.EDProducer( "EvFFEDSelector", + inputTag = cms.InputTag( "rawDataCollector" ), + fedList = cms.vuint32( 1023 ) +) +process.hltTriggerSummaryAOD = cms.EDProducer( "TriggerSummaryProducerAOD", + processName = cms.string( "@" ) +) +process.hltTriggerSummaryRAW = cms.EDProducer( "TriggerSummaryProducerRAW", + processName = cms.string( "@" ) ) process.hltL1GtTrigReport = cms.EDAnalyzer( "L1GtTrigReport", PrintVerbosity = cms.untracked.int32( 10 ), @@ -2678,6 +8875,10 @@ dataTier = cms.untracked.string( "RAW" ) ), SelectEvents = cms.untracked.PSet( SelectEvents = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', + 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', + 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ), outputCommands = cms.untracked.vstring( 'drop *', 'keep *_hltL1GtObjectMap_*_*', @@ -2690,15 +8891,68 @@ process.HLTL1UnpackerSequence = cms.Sequence( process.hltGtDigis + process.hltGctDigis + process.hltL1GtObjectMap + process.hltL1extraParticles ) process.HLTBeamSpot = cms.Sequence( process.hltScalersRawToDigi + process.hltOnlineBeamSpot ) process.HLTBeginSequence = cms.Sequence( process.hltTriggerType + process.HLTL1UnpackerSequence + process.HLTBeamSpot ) +process.HLTMuonLocalRecoSequence = cms.Sequence( process.hltMuonDTDigis + process.hltDt1DRecHits + process.hltDt4DSegments + process.hltMuonCSCDigis + process.hltCsc2DRecHits + process.hltCscSegments + process.hltMuonRPCDigis + process.hltRpcRecHits ) +process.HLTL2muonrecoNocandSequence = cms.Sequence( process.HLTMuonLocalRecoSequence + process.hltL2OfflineMuonSeeds + process.hltL2MuonSeeds + process.hltL2Muons ) +process.HLTL2muonrecoSequence = cms.Sequence( process.HLTL2muonrecoNocandSequence + process.hltL2MuonCandidates ) +process.HLTDoLocalPixelSequence = cms.Sequence( process.hltSiPixelDigis + process.hltSiPixelClusters + process.hltSiPixelClustersCache + process.hltSiPixelRecHits ) +process.HLTDoLocalStripSequence = cms.Sequence( process.hltSiStripExcludedFEDListProducer + process.hltSiStripRawToClustersFacility + process.hltSiStripClusters ) +process.HLTL3muonTkCandidateSequence = cms.Sequence( process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltL3TrajSeedOIState + process.hltL3TrackCandidateFromL2OIState + process.hltL3TkTracksFromL2OIState + process.hltL3MuonsOIState + process.hltL3TrajSeedOIHit + process.hltL3TrackCandidateFromL2OIHit + process.hltL3TkTracksFromL2OIHit + process.hltL3MuonsOIHit + process.hltL3TkFromL2OICombination + process.hltPixelLayerTriplets + process.hltPixelLayerPairs + process.hltMixedLayerPairs + process.hltL3TrajSeedIOHit + process.hltL3TrackCandidateFromL2IOHit + process.hltL3TkTracksFromL2IOHit + process.hltL3MuonsIOHit + process.hltL3TrajectorySeed + process.hltL3TrackCandidateFromL2 ) +process.HLTL3muonrecoNocandSequence = cms.Sequence( process.HLTL3muonTkCandidateSequence + process.hltL3TkTracksMergeStep1 + process.hltL3TkTracksFromL2 + process.hltL3MuonsLinksCombination + process.hltL3Muons ) +process.HLTL3muonrecoSequence = cms.Sequence( process.HLTL3muonrecoNocandSequence + process.hltL3MuonCandidates ) +process.HLTEndSequence = cms.Sequence( process.hltBoolEnd ) +process.HLTDoFullUnpackingEgammaEcalSequence = cms.Sequence( process.hltEcalDigis + process.hltEcalPreshowerDigis + process.hltEcalUncalibRecHit + process.hltEcalDetIdToBeRecovered + process.hltEcalRecHit + process.hltEcalPreshowerRecHit ) +process.HLTPFClusteringForEgamma = cms.Sequence( process.hltRechitInRegionsECAL + process.hltRechitInRegionsES + process.hltParticleFlowRecHitECALL1Seeded + process.hltParticleFlowRecHitPSL1Seeded + process.hltParticleFlowClusterPSL1Seeded + process.hltParticleFlowClusterECALUncorrectedL1Seeded + process.hltParticleFlowClusterECALL1Seeded + process.hltParticleFlowSuperClusterECALL1Seeded ) +process.HLTDoLocalHcalWithTowerSequence = cms.Sequence( process.hltHcalDigis + process.hltHbhereco + process.hltHfreco + process.hltHoreco + process.hltTowerMakerForAll ) +process.HLTFastJetForEgamma = cms.Sequence( process.hltFixedGridRhoFastjetAllCaloForMuons ) +process.HLTPFHcalClusteringForEgamma = cms.Sequence( process.hltRegionalTowerForEgamma + process.hltParticleFlowRecHitHCALForEgamma + process.hltParticleFlowClusterHCALForEgamma ) +process.HLTGsfElectronSequence = cms.Sequence( process.hltEgammaCkfTrackCandidatesForGSF + process.hltEgammaGsfTracks + process.hltEgammaGsfElectrons + process.hltEgammaGsfTrackVars ) +process.HLTRecoPixelVertexingForElectronSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracksElectrons + process.hltPixelVerticesElectrons ) +process.HLTPixelTrackingForElectron = cms.Sequence( process.hltElectronsVertex + process.HLTDoLocalPixelSequence + process.HLTRecoPixelVertexingForElectronSequence ) +process.HLTIterativeTrackingForElectronsIteration0 = cms.Sequence( process.hltIter0ElectronsPixelSeedsFromPixelTracks + process.hltIter0ElectronsCkfTrackCandidates + process.hltIter0ElectronsCtfWithMaterialTracks + process.hltIter0ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronsIteration1 = cms.Sequence( process.hltIter1ElectronsClustersRefRemoval + process.hltIter1ElectronsMaskedMeasurementTrackerEvent + process.hltIter1ElectronsPixelLayerTriplets + process.hltIter1ElectronsPixelSeeds + process.hltIter1ElectronsCkfTrackCandidates + process.hltIter1ElectronsCtfWithMaterialTracks + process.hltIter1ElectronsTrackSelectionHighPurityLoose + process.hltIter1ElectronsTrackSelectionHighPurityTight + process.hltIter1ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronsIteration2 = cms.Sequence( process.hltIter2ElectronsClustersRefRemoval + process.hltIter2ElectronsMaskedMeasurementTrackerEvent + process.hltIter2ElectronsPixelLayerPairs + process.hltIter2ElectronsPixelSeeds + process.hltIter2ElectronsCkfTrackCandidates + process.hltIter2ElectronsCtfWithMaterialTracks + process.hltIter2ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronIter02 = cms.Sequence( process.HLTIterativeTrackingForElectronsIteration0 + process.HLTIterativeTrackingForElectronsIteration1 + process.hltIter1MergedForElectrons + process.HLTIterativeTrackingForElectronsIteration2 + process.hltIter2MergedForElectrons ) +process.HLTTrackReconstructionForIsoElectronIter02 = cms.Sequence( process.HLTPixelTrackingForElectron + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingForElectronIter02 ) +process.HLTEle27WP80GsfSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1SingleEG20ORL1SingleEG22Filter + process.hltEG27EtFilter + process.hltEgammaClusterShape + process.hltEle27WP80ClusterShapeFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltEle27WP80HEFilter + process.hltEgammaEcalPFClusterIso + process.hltEle27WP80EcalIsoFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltEle27WP80HcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltEle27WP80PixelMatchFilter + process.HLTGsfElectronSequence + process.hltEle27WP80GsfOneOEMinusOneOPFilter + process.hltEle27WP80GsfDetaFilter + process.hltEle27WP80GsfDphiFilter + process.HLTTrackReconstructionForIsoElectronIter02 + process.hltEgammaEleGsfTrackIso + process.hltEle27WP80GsfTrackIsoFilter ) +process.HLTRecoPixelVertexingForPhotonsSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracks + process.hltPixelVerticesForPhotons ) +process.HLTIterativeTrackingForPhotonsIteration0 = cms.Sequence( process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons + process.hltIter0PFlowCkfTrackCandidatesForPhotons + process.hltIter0PFlowCtfWithMaterialTracksForPhotons + process.hltIter0PFlowTrackSelectionHighPurityForPhotons ) +process.HLTIterativeTrackingForPhotonsIteration1 = cms.Sequence( process.hltIter1ClustersRefRemovalForPhotons + process.hltIter1MaskedMeasurementTrackerEventForPhotons + process.hltIter1PixelLayerTripletsForPhotons + process.hltIter1PFlowPixelSeedsForPhotons + process.hltIter1PFlowCkfTrackCandidatesForPhotons + process.hltIter1PFlowCtfWithMaterialTracksForPhotons + process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons + process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons + process.hltIter1PFlowTrackSelectionHighPurityForPhotons ) +process.HLTIterativeTrackingForPhotonsIteration2 = cms.Sequence( process.hltIter2ClustersRefRemovalForPhotons + process.hltIter2MaskedMeasurementTrackerEventForPhotons + process.hltIter2PixelLayerPairsForPhotons + process.hltIter2PFlowPixelSeedsForPhotons + process.hltIter2PFlowCkfTrackCandidatesForPhotons + process.hltIter2PFlowCtfWithMaterialTracksForPhotons + process.hltIter2PFlowTrackSelectionHighPurityForPhotons ) +process.HLTIterativeTrackingForPhotonsIter02 = cms.Sequence( process.HLTIterativeTrackingForPhotonsIteration0 + process.HLTIterativeTrackingForPhotonsIteration1 + process.hltIter1MergedForPhotons + process.HLTIterativeTrackingForPhotonsIteration2 + process.hltIter2MergedForPhotons ) +process.HLTTrackReconstructionForIsoForPhotons = cms.Sequence( process.HLTDoLocalPixelSequence + process.HLTRecoPixelVertexingForPhotonsSequence + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingForPhotonsIter02 ) +process.HLTPhoton20CaloIdVLIsoLSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1SingleEG12Filter + process.hltEG20EtFilter + process.hltEgammaClusterShape + process.hltEG20CaloIdVLClusterShapeFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltEG20CaloIdVLHEFilter + process.hltEgammaEcalPFClusterIso + process.hltEG20CaloIdVLIsoLEcalIsoFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltEG20CaloIdVLIsoLHcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.HLTTrackReconstructionForIsoForPhotons + process.hltEgammaHollowTrackIso + process.hltEG20CaloIdVLIsoLTrackIsoFilter ) process.HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence = cms.Sequence( process.hltEcalDigis + process.hltEcalUncalibRecHit + process.hltEcalDetIdToBeRecovered + process.hltEcalRecHit ) process.HLTDoLocalHcalSequence = cms.Sequence( process.hltHcalDigis + process.hltHbhereco + process.hltHfreco + process.hltHoreco ) process.HLTDoCaloSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + process.HLTDoLocalHcalSequence + process.hltTowerMakerForAll ) process.HLTAK4CaloJetsReconstructionSequence = cms.Sequence( process.HLTDoCaloSequence + process.hltAK4CaloJets + process.hltAK4CaloJetsIDPassed ) process.HLTAK4CaloJetsCorrectionSequence = cms.Sequence( process.hltFixedGridRhoFastjetAllCalo + process.hltAK4CaloJetsCorrected + process.hltAK4CaloJetsCorrectedIDPassed ) process.HLTAK4CaloJetsSequence = cms.Sequence( process.HLTAK4CaloJetsReconstructionSequence + process.HLTAK4CaloJetsCorrectionSequence ) -process.HLTEndSequence = cms.Sequence( process.hltBoolEnd ) +process.HLTDoCaloSequencePF = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + process.HLTDoLocalHcalSequence + process.hltTowerMakerForPF ) +process.HLTAK4CaloJetsPrePFRecoSequence = cms.Sequence( process.HLTDoCaloSequencePF + process.hltAK4CaloJetsPF ) +process.HLTPreAK4PFJetsRecoSequence = cms.Sequence( process.HLTAK4CaloJetsPrePFRecoSequence + process.hltAK4CaloJetsPFEt5 ) +process.HLTRecopixelvertexingSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracks + process.hltPixelVertices ) +process.HLTIterativeTrackingIteration0 = cms.Sequence( process.hltIter0PFLowPixelSeedsFromPixelTracks + process.hltIter0PFlowCkfTrackCandidates + process.hltIter0PFlowCtfWithMaterialTracks + process.hltIter0PFlowTrackSelectionHighPurity ) +process.HLTIter0TrackAndTauJet4Iter1Sequence = cms.Sequence( process.hltTrackIter0RefsForJets4Iter1 + process.hltAK4Iter0TrackJets4Iter1 + process.hltIter0TrackAndTauJets4Iter1 ) +process.HLTIterativeTrackingIteration1 = cms.Sequence( process.hltIter1ClustersRefRemoval + process.hltIter1MaskedMeasurementTrackerEvent + process.hltIter1PixelLayerTriplets + process.hltIter1PFlowPixelSeeds + process.hltIter1PFlowCkfTrackCandidates + process.hltIter1PFlowCtfWithMaterialTracks + process.hltIter1PFlowTrackSelectionHighPurityLoose + process.hltIter1PFlowTrackSelectionHighPurityTight + process.hltIter1PFlowTrackSelectionHighPurity ) +process.HLTIter1TrackAndTauJets4Iter2Sequence = cms.Sequence( process.hltIter1TrackRefsForJets4Iter2 + process.hltAK4Iter1TrackJets4Iter2 + process.hltIter1TrackAndTauJets4Iter2 ) +process.HLTIterativeTrackingIteration2 = cms.Sequence( process.hltIter2ClustersRefRemoval + process.hltIter2MaskedMeasurementTrackerEvent + process.hltIter2PixelLayerPairs + process.hltIter2PFlowPixelSeeds + process.hltIter2PFlowCkfTrackCandidates + process.hltIter2PFlowCtfWithMaterialTracks + process.hltIter2PFlowTrackSelectionHighPurity ) +process.HLTIter2TrackAndTauJets4Iter3Sequence = cms.Sequence( process.hltIter2TrackRefsForJets4Iter3 + process.hltAK4Iter2TrackJets4Iter3 + process.hltIter2TrackAndTauJets4Iter3 ) +process.HLTIterativeTrackingIteration3 = cms.Sequence( process.hltIter3ClustersRefRemoval + process.hltIter3MaskedMeasurementTrackerEvent + process.hltIter3LayerTriplets + process.hltIter3PFlowMixedSeeds + process.hltIter3PFlowCkfTrackCandidates + process.hltIter3PFlowCtfWithMaterialTracks + process.hltIter3PFlowTrackSelectionHighPurityLoose + process.hltIter3PFlowTrackSelectionHighPurityTight + process.hltIter3PFlowTrackSelectionHighPurity ) +process.HLTIter3TrackAndTauJets4Iter4Sequence = cms.Sequence( process.hltIter3TrackRefsForJets4Iter4 + process.hltAK4Iter3TrackJets4Iter4 + process.hltIter3TrackAndTauJets4Iter4 ) +process.HLTIterativeTrackingIteration4 = cms.Sequence( process.hltIter4ClustersRefRemoval + process.hltIter4MaskedMeasurementTrackerEvent + process.hltIter4PixelLessLayerTriplets + process.hltIter4PFlowPixelLessSeeds + process.hltIter4PFlowCkfTrackCandidates + process.hltIter4PFlowCtfWithMaterialTracks + process.hltIter4PFlowTrackSelectionHighPurity ) +process.HLTIterativeTrackingIter04 = cms.Sequence( process.HLTIterativeTrackingIteration0 + process.HLTIter0TrackAndTauJet4Iter1Sequence + process.HLTIterativeTrackingIteration1 + process.hltIter1Merged + process.HLTIter1TrackAndTauJets4Iter2Sequence + process.HLTIterativeTrackingIteration2 + process.hltIter2Merged + process.HLTIter2TrackAndTauJets4Iter3Sequence + process.HLTIterativeTrackingIteration3 + process.hltIter3Merged + process.HLTIter3TrackAndTauJets4Iter4Sequence + process.HLTIterativeTrackingIteration4 + process.hltIter4Merged ) +process.HLTTrackReconstructionForPF = cms.Sequence( process.HLTDoLocalPixelSequence + process.HLTRecopixelvertexingSequence + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingIter04 + process.hltPFMuonMerging + process.hltMuonLinks + process.hltMuons ) +process.HLTPreshowerSequence = cms.Sequence( process.hltEcalPreshowerDigis + process.hltEcalPreshowerRecHit ) +process.HLTParticleFlowSequence = cms.Sequence( process.HLTPreshowerSequence + process.hltParticleFlowRecHitECALUnseeded + process.hltParticleFlowRecHitHCAL + process.hltParticleFlowRecHitPSUnseeded + process.hltParticleFlowClusterECALUncorrectedUnseeded + process.hltParticleFlowClusterPSUnseeded + process.hltParticleFlowClusterECALUnseeded + process.hltParticleFlowClusterHCAL + process.hltParticleFlowClusterHFEM + process.hltParticleFlowClusterHFHAD + process.hltLightPFTracks + process.hltParticleFlowBlock + process.hltParticleFlow ) +process.HLTAK4PFJetsReconstructionSequence = cms.Sequence( process.HLTL2muonrecoSequence + process.HLTL3muonrecoSequence + process.HLTTrackReconstructionForPF + process.HLTParticleFlowSequence + process.hltAK4PFJets ) +process.HLTAK4PFJetsCorrectionSequence = cms.Sequence( process.hltFixedGridRhoFastjetAll + process.hltAK4PFJetsCorrected ) +process.HLTAK4PFJetsSequence = cms.Sequence( process.HLTPreAK4PFJetsRecoSequence + process.HLTAK4PFJetsReconstructionSequence + process.HLTAK4PFJetsCorrectionSequence ) process.HLTriggerFirstPath = cms.Path( process.hltGetConditions + process.hltGetRaw + process.hltBoolFalse ) +process.HLT_Mu40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sMu16 + process.hltPreMu40 + process.hltL1fL1sMu16L1Filtered0 + process.HLTL2muonrecoSequence + process.hltL2fL1sMu16L1f0L2Filtered16Q + process.HLTL3muonrecoSequence + process.hltL3fL1sMu16L1f0L2f16QL3Filtered40Q + process.HLTEndSequence ) +process.HLT_Ele27_WP80_Gsf_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG20ORL1SingleEG22 + process.hltPreEle27WP80Gsf + process.HLTEle27WP80GsfSequence + process.HLTEndSequence ) +process.HLT_Photon20_CaloIdVL_IsoL_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG12 + process.hltPrePhoton20CaloIdVLIsoL + process.HLTPhoton20CaloIdVLIsoLSequence + process.HLTEndSequence ) +process.HLT_PFJet260_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleJet128 + process.hltPrePFJet260 + process.HLTAK4CaloJetsSequence + process.hltSingleCaloJet200 + process.HLTAK4PFJetsSequence + process.hltPFJetsCorrectedMatchedToCaloJets200 + process.hltSinglePFJet260 + process.HLTEndSequence ) process.HLT_CaloJet260_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleJet128 + process.hltPreCaloJet260 + process.HLTAK4CaloJetsSequence + process.hltSingleCaloJet260 + process.HLTEndSequence ) process.HLT_Physics_v1 = cms.Path( process.HLTBeginSequence + process.hltPrePhysics + process.HLTEndSequence ) process.HLTriggerFinalPath = cms.Path( process.hltGtDigis + process.hltScalersRawToDigi + process.hltFEDSelector + process.hltTriggerSummaryAOD + process.hltTriggerSummaryRAW ) @@ -2718,10 +8972,6 @@ ) ) -# Disable HF Noise filters in HIon menu -if 'hltHfreco' in process.__dict__: - process.hltHfreco.setNoiseFlags = cms.bool( False ) - # customise the HLT menu for running on MC from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC process = customizeHLTforMC(process) @@ -2780,7 +9030,7 @@ # override the GlobalTag, connection string and pfnPrefix if 'GlobalTag' in process.__dict__: from Configuration.AlCa.GlobalTag_condDBv2 import GlobalTag as customiseGlobalTag - process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:starthi_HIon', conditions = 'L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2011_v0_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') + process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:starthi_HIon', conditions = 'L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') process.GlobalTag.connect = 'frontier://FrontierProd/CMS_CONDITIONS' process.GlobalTag.pfnPrefix = cms.untracked.string('frontier://FrontierProd/') for pset in process.GlobalTag.toGet.value(): diff --git a/HLTrigger/Configuration/test/OnLine_HLT_PIon.py b/HLTrigger/Configuration/test/OnLine_HLT_PIon.py index e77c62baf0c33..5fda25251a036 100644 --- a/HLTrigger/Configuration/test/OnLine_HLT_PIon.py +++ b/HLTrigger/Configuration/test/OnLine_HLT_PIon.py @@ -1,11 +1,11 @@ -# /dev/CMSSW_7_1_1/PIon/V86 (CMSSW_7_1_6) +# /dev/CMSSW_7_1_1/PIon/V87 (CMSSW_7_1_6) import FWCore.ParameterSet.Config as cms process = cms.Process( "HLTPIon" ) process.HLTConfigVersion = cms.PSet( - tableName = cms.string('/dev/CMSSW_7_1_1/PIon/V86') + tableName = cms.string('/dev/CMSSW_7_1_1/PIon/V87') ) process.HLTIter4PSetTrajectoryFilterIT = cms.PSet( @@ -453,7 +453,9 @@ ) process.streams = cms.PSet( A = cms.vstring( 'InitialPD' ) ) process.datasets = cms.PSet( InitialPD = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ) @@ -3671,8 +3673,8 @@ process.hltBoolEnd = cms.EDFilter( "HLTBool", result = cms.bool( True ) ) -process.hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), +process.hltL1sL1SingleEG20ORL1SingleEG22 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG20 OR L1_SingleEG22" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -3683,7 +3685,7 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -process.hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", +process.hltPreEle27WP80Gsf = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) @@ -4110,7 +4112,7 @@ scHybridBarrelProducer = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ), recoEcalCandidateCollection = cms.string( "" ) ) -process.hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", +process.hltEGL1SingleEG20ORL1SingleEG22Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", doIsolated = cms.bool( False ), endcap_end = cms.double( 2.65 ), saveTags = cms.bool( False ), @@ -4120,19 +4122,19 @@ candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), region_phi_size = cms.double( 1.044 ), region_eta_size = cms.double( 0.522 ), - L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG20ORL1SingleEG22" ), candNonIsolatedTag = cms.InputTag( "" ), l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), ncandcut = cms.int32( 1 ) ) -process.hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", +process.hltEG27EtFilter = cms.EDFilter( "HLTEgammaEtFilter", saveTags = cms.bool( False ), L1NonIsoCand = cms.InputTag( "" ), relaxed = cms.untracked.bool( False ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), - etcutEB = cms.double( 20.0 ), - etcutEE = cms.double( 20.0 ), + inputTag = cms.InputTag( "hltEGL1SingleEG20ORL1SingleEG22Filter" ), + etcutEB = cms.double( 27.0 ), + etcutEE = cms.double( 27.0 ), ncandcut = cms.int32( 1 ) ) process.hltEgammaClusterShape = cms.EDProducer( "EgammaHLTClusterShapeProducer", @@ -4141,22 +4143,22 @@ ecalRechitEE = cms.InputTag( 'hltRechitInRegionsECAL','EcalRecHitsEE' ), isIeta = cms.bool( True ) ) -process.hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", +process.hltEle27WP80ClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), thrOverE2EB = cms.double( -1.0 ), - thrRegularEE = cms.double( 0.04 ), + thrRegularEE = cms.double( 0.03 ), thrOverEEE = cms.double( -1.0 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), thrOverEEB = cms.double( -1.0 ), - thrRegularEB = cms.double( 0.024 ), + thrRegularEB = cms.double( 0.01 ), lessThan = cms.bool( True ), useEt = cms.bool( False ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaClusterShape" ), - candTag = cms.InputTag( "hltEG20EtFilter" ), + candTag = cms.InputTag( "hltEG27EtFilter" ), nonIsoTag = cms.InputTag( "" ) ) process.hltHcalDigis = cms.EDProducer( "HcalRawToDigi", @@ -4444,22 +4446,22 @@ rhoScale = cms.double( 1.0 ), doEtSum = cms.bool( False ) ) -process.hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", +process.hltEle27WP80HEFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), thrOverE2EB = cms.double( -1.0 ), thrRegularEE = cms.double( -1.0 ), - thrOverEEE = cms.double( 0.1 ), + thrOverEEE = cms.double( 0.05 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.15 ), + thrOverEEB = cms.double( 0.1 ), thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( False ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaHoverE" ), - candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + candTag = cms.InputTag( "hltEle27WP80ClusterShapeFilter" ), nonIsoTag = cms.InputTag( "" ) ) process.hltEgammaEcalPFClusterIso = cms.EDProducer( "EgammaHLTEcalPFClusterIsolationProducer", @@ -4479,22 +4481,22 @@ rhoMax = cms.double( 9.9999999E7 ), rhoScale = cms.double( 1.0 ) ) -process.hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +process.hltEle27WP80EcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 5.5 ), - thrOverEEE = cms.double( 0.012 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.15 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.012 ), - thrRegularEB = cms.double( 5.5 ), + thrOverEEB = cms.double( 0.2 ), + thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + candTag = cms.InputTag( "hltEle27WP80HEFilter" ), nonIsoTag = cms.InputTag( "" ) ) process.hltRegionalTowerForEgamma = cms.EDProducer( "EgammaHLTCaloTowerProducer", @@ -4630,25 +4632,222 @@ pfClusterProducerHFEM = cms.InputTag( "hltParticleFlowClusterHFEMForEgamma" ), rhoScale = cms.double( 1.0 ) ) -process.hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +process.hltEle27WP80HcalIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( False ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 3.5 ), - thrOverEEE = cms.double( 0.005 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.11 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.005 ), - thrRegularEB = cms.double( 3.5 ), + thrOverEEB = cms.double( 0.11 ), + thrRegularEB = cms.double( 999999.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + candTag = cms.InputTag( "hltEle27WP80EcalIsoFilter" ), nonIsoTag = cms.InputTag( "" ) ) -process.hltPixelTracks = cms.EDProducer( "PixelTrackProducer", +process.hltEgammaElectronPixelSeeds = cms.EDProducer( "ElectronSeedProducer", + endcapSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALEndcapWithPreshower' ), + SeedConfiguration = cms.PSet( + searchInTIDTEC = cms.bool( True ), + HighPtThreshold = cms.double( 35.0 ), + r2MinF = cms.double( -0.15 ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + useOnDemandTracker = cms.untracked.int32( 0 ), + SeedingLayers = cms.InputTag( "hltMixedLayerPairs" ) + ), + DeltaPhi1Low = cms.double( 0.23 ), + DeltaPhi1High = cms.double( 0.08 ), + ePhiMin1 = cms.double( -0.08 ), + PhiMin2 = cms.double( -0.004 ), + LowPtThreshold = cms.double( 3.0 ), + RegionPSet = cms.PSet( + deltaPhiRegion = cms.double( 0.4 ), + originHalfLength = cms.double( 15.0 ), + useZInVertex = cms.bool( True ), + deltaEtaRegion = cms.double( 0.1 ), + ptMin = cms.double( 1.5 ), + originRadius = cms.double( 0.2 ), + VertexProducer = cms.InputTag( "dummyVertices" ) + ), + maxHOverE = cms.double( 999999.0 ), + dynamicPhiRoad = cms.bool( False ), + ePhiMax1 = cms.double( 0.04 ), + DeltaPhi2 = cms.double( 0.004 ), + measurementTrackerName = cms.string( "hltESPMeasurementTracker" ), + SizeWindowENeg = cms.double( 0.675 ), + nSigmasDeltaZ1 = cms.double( 5.0 ), + rMaxI = cms.double( 0.2 ), + PhiMax2 = cms.double( 0.004 ), + preFilteredSeeds = cms.bool( True ), + r2MaxF = cms.double( 0.15 ), + pPhiMin1 = cms.double( -0.04 ), + initialSeeds = cms.InputTag( "noSeedsHere" ), + pPhiMax1 = cms.double( 0.08 ), + hbheModule = cms.string( "hbhereco" ), + SCEtCut = cms.double( 3.0 ), + z2MaxB = cms.double( 0.09 ), + fromTrackerSeeds = cms.bool( True ), + hcalRecHits = cms.InputTag( "hltHbhereco" ), + z2MinB = cms.double( -0.09 ), + hbheInstance = cms.string( "" ), + rMinI = cms.double( -0.2 ), + hOverEConeSize = cms.double( 0.0 ), + hOverEHBMinE = cms.double( 999999.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + applyHOverECut = cms.bool( False ), + hOverEHFMinE = cms.double( 999999.0 ), + measurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ) + ), + barrelSuperClusters = cms.InputTag( 'hltParticleFlowSuperClusterECALL1Seeded','hltParticleFlowSuperClusterECALBarrel' ) +) +process.hltEle27WP80PixelMatchFilter = cms.EDFilter( "HLTElectronPixelMatchFilter", + saveTags = cms.bool( False ), + s2_threshold = cms.double( 0.4 ), + npixelmatchcut = cms.double( 1.0 ), + tanhSO10InterThres = cms.double( 1.0 ), + doIsolated = cms.bool( True ), + s_a_phi1B = cms.double( 0.0069 ), + s_a_phi1F = cms.double( 0.0076 ), + s_a_phi1I = cms.double( 0.0088 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + candTag = cms.InputTag( "hltEle27WP80HcalIsoFilter" ), + tanhSO10ForwardThres = cms.double( 1.0 ), + L1IsoPixelSeedsTag = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + L1NonIsoCand = cms.InputTag( "" ), + ncandcut = cms.int32( 1 ), + tanhSO10BarrelThres = cms.double( 0.35 ), + s_a_rF = cms.double( 0.04 ), + L1NonIsoPixelSeedsTag = cms.InputTag( "" ), + s_a_rI = cms.double( 0.027 ), + s_a_phi2I = cms.double( 7.0E-4 ), + useS = cms.bool( False ), + s_a_phi2B = cms.double( 3.7E-4 ), + s_a_zB = cms.double( 0.012 ), + s_a_phi2F = cms.double( 0.00906 ) +) +process.hltEgammaCkfTrackCandidatesForGSF = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltEgammaElectronPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterial" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( True ), + useHitsSplitting = cms.bool( True ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( True ), + maxNSeeds = cms.uint32( 1000000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTPSetTrajectoryBuilderForElectrons" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltEgammaGsfTracks = cms.EDProducer( "GsfTrackProducer", + src = cms.InputTag( "hltEgammaCkfTrackCandidatesForGSF" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + producer = cms.string( "" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPGsfElectronFittingSmoother" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "hltESPMeasurementTracker" ), + AlgorithmName = cms.string( "gsf" ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + Propagator = cms.string( "hltESPFwdElectronPropagator" ) +) +process.hltEgammaGsfElectrons = cms.EDProducer( "EgammaHLTPixelMatchElectronProducers", + BSProducer = cms.InputTag( "hltOnlineBeamSpot" ), + UseGsfTracks = cms.bool( True ), + TrackProducer = cms.InputTag( "" ), + GsfTrackProducer = cms.InputTag( "hltEgammaGsfTracks" ) +) +process.hltEgammaGsfTrackVars = cms.EDProducer( "EgammaHLTGsfTrackVarProducer", + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), + upperTrackNrToRemoveCut = cms.int32( 9999 ), + lowerTrackNrToRemoveCut = cms.int32( -1 ), + inputCollection = cms.InputTag( "hltEgammaGsfTracks" ) +) +process.hltEle27WP80GsfOneOEMinusOneOPFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.05 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.05 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','OneOESuperMinusOneOP' ), + candTag = cms.InputTag( "hltEle27WP80PixelMatchFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEle27WP80GsfDetaFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.007 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.007 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Deta' ), + candTag = cms.InputTag( "hltEle27WP80GsfOneOEMinusOneOPFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEle27WP80GsfDphiFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.03 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.06 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( 'hltEgammaGsfTrackVars','Dphi' ), + candTag = cms.InputTag( "hltEle27WP80GsfDetaFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltElectronsVertex = cms.EDProducer( "VertexFromTrackProducer", + verbose = cms.untracked.bool( False ), + useTriggerFilterElectrons = cms.bool( False ), + beamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + isRecoCandidate = cms.bool( True ), + trackLabel = cms.InputTag( "hltEgammaGsfElectrons" ), + useTriggerFilterMuons = cms.bool( False ), + useBeamSpot = cms.bool( True ), + vertexLabel = cms.InputTag( "None" ), + triggerFilterElectronsSrc = cms.InputTag( "None" ), + triggerFilterMuonsSrc = cms.InputTag( "None" ), + useVertex = cms.bool( False ) +) +process.hltPixelTracksElectrons = cms.EDProducer( "PixelTrackProducer", FilterPSet = cms.PSet( chi2 = cms.double( 1000.0 ), nSigmaTipMaxTolerance = cms.double( 0.0 ), @@ -4665,13 +4864,20 @@ fixImpactParameter = cms.double( 0.0 ) ), RegionFactoryPSet = cms.PSet( - ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + ComponentName = cms.string( "GlobalTrackingRegionWithVerticesProducer" ), RegionPSet = cms.PSet( precise = cms.bool( True ), originRadius = cms.double( 0.2 ), ptMin = cms.double( 0.9 ), - originHalfLength = cms.double( 24.0 ), - beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + originHalfLength = cms.double( 0.3 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + useFixedError = cms.bool( True ), + sigmaZVertex = cms.double( 3.0 ), + fixedError = cms.double( 0.2 ), + VertexCollection = cms.InputTag( "hltElectronsVertex" ), + useFoundVertices = cms.bool( True ), + nSigmaZ = cms.double( 4.0 ), + useFakeVertices = cms.bool( True ) ) ), CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), @@ -4694,32 +4900,32 @@ SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) ) ) -process.hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", +process.hltPixelVerticesElectrons = cms.EDProducer( "PixelVertexProducer", WtAverage = cms.bool( True ), Method2 = cms.bool( True ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), Verbosity = cms.int32( 0 ), UseError = cms.bool( True ), - TrackCollection = cms.InputTag( "hltPixelTracks" ), + TrackCollection = cms.InputTag( "hltPixelTracksElectrons" ), PtMin = cms.double( 1.0 ), NTrkMin = cms.int32( 2 ), ZOffset = cms.double( 5.0 ), Finder = cms.string( "DivisiveVertexFinder" ), ZSeparation = cms.double( 0.05 ) ) -process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", +process.hltIter0ElectronsPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", useEventsWithNoVertex = cms.bool( True ), originHalfLength = cms.double( 0.3 ), useProtoTrackKinematics = cms.bool( False ), usePV = cms.bool( True ), - InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - InputCollection = cms.InputTag( "hltPixelTracks" ), + InputCollection = cms.InputTag( "hltPixelTracksElectrons" ), originRadius = cms.double( 0.1 ) ) -process.hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), +process.hltIter0ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0ElectronsPixelSeedsFromPixelTracks" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -4738,8 +4944,8 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -process.hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), +process.hltIter0ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), @@ -4747,7 +4953,7 @@ Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter0ForPhotons" ), + AlgorithmName = cms.string( "iter0IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -4756,7 +4962,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -process.hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +process.hltIter0ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4783,20 +4989,20 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter0ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.4, 4.0 ), d0_par1 = cms.vdouble( 0.3, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -process.hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", +process.hltIter1ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", doStrip = cms.bool( True ), doStripChargeCheck = cms.bool( True ), - trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + trajectories = cms.InputTag( "hltIter0ElectronsTrackSelectionHighPurity" ), oldClusterRemovalInfo = cms.InputTag( "" ), stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), pixelClusters = cms.InputTag( "hltSiPixelClusters" ), @@ -4806,12 +5012,12 @@ ), doPixel = cms.bool( True ) ) -process.hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", - clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), +process.hltIter1ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), OnDemand = cms.bool( False ), src = cms.InputTag( "hltSiStripClusters" ) ) -process.hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", +process.hltIter1ElectronsPixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", layerList = cms.vstring( 'BPix1+BPix2+BPix3', 'BPix1+BPix2+FPix1_pos', 'BPix1+BPix2+FPix1_neg', @@ -4825,7 +5031,7 @@ hitErrorRZ = cms.double( 0.0036 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0051 ) ), MTEC = cms.PSet( ), @@ -4837,12 +5043,12 @@ hitErrorRZ = cms.double( 0.006 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0027 ) ), TIB = cms.PSet( ) ) -process.hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", +process.hltIter1ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", RegionFactoryPSet = cms.PSet( ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), RegionPSet = cms.PSet( @@ -4852,7 +5058,7 @@ input = cms.InputTag( "hltEgammaCandidates" ), maxNRegions = cms.int32( 10 ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), zErrorBeamSpot = cms.double( 24.2 ), deltaEta = cms.double( 0.5 ), deltaPhi = cms.double( 0.5 ), @@ -4885,7 +5091,7 @@ extraHitRZtolerance = cms.double( 0.037 ), SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) ), - SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + SeedingLayers = cms.InputTag( "hltIter1ElectronsPixelLayerTriplets" ) ), SeedCreatorPSet = cms.PSet( ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), @@ -4893,8 +5099,8 @@ ), TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) -process.hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), +process.hltIter1ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1ElectronsPixelSeeds" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -4903,7 +5109,7 @@ propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) ), TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), cleanTrajectoryAfterInOut = cms.bool( False ), useHitsSplitting = cms.bool( False ), RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), @@ -4913,16 +5119,16 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -process.hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), +process.hltIter1ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1ElectronsMaskedMeasurementTrackerEvent" ), Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter1ForPhotons" ), + AlgorithmName = cms.string( "iter1IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -4931,7 +5137,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +process.hltIter1ElectronsTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4958,17 +5164,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.9, 3.0 ), d0_par1 = cms.vdouble( 0.85, 3.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +process.hltIter1ElectronsTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -4995,17 +5201,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter1ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 1.0, 4.0 ), d0_par1 = cms.vdouble( 1.0, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -process.hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", +process.hltIter1ElectronsTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -5014,13 +5220,13 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + TrackProducer1 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityLoose" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurityTight" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -process.hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", +process.hltIter1MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -5029,17 +5235,17 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer1 = cms.string( "hltIter0ElectronsTrackSelectionHighPurity" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer2 = cms.string( "hltIter1ElectronsTrackSelectionHighPurity" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -process.hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", +process.hltIter2ElectronsClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", doStrip = cms.bool( True ), doStripChargeCheck = cms.bool( True ), - trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), - oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + trajectories = cms.InputTag( "hltIter1ElectronsTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ElectronsClustersRefRemoval" ), stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), pixelClusters = cms.InputTag( "hltSiPixelClusters" ), Common = cms.PSet( @@ -5048,12 +5254,12 @@ ), doPixel = cms.bool( True ) ) -process.hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", - clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), +process.hltIter2ElectronsMaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), OnDemand = cms.bool( False ), src = cms.InputTag( "hltSiStripClusters" ) ) -process.hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", +process.hltIter2ElectronsPixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", layerList = cms.vstring( 'BPix1+BPix2', 'BPix1+BPix3', 'BPix2+BPix3', @@ -5075,7 +5281,7 @@ hitErrorRZ = cms.double( 0.0036 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0051 ) ), MTEC = cms.PSet( ), @@ -5087,12 +5293,12 @@ hitErrorRZ = cms.double( 0.006 ), useErrorsFromParam = cms.bool( True ), TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), - skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + skipClusters = cms.InputTag( "hltIter2ElectronsClustersRefRemoval" ), hitErrorRPhi = cms.double( 0.0027 ) ), TIB = cms.PSet( ) ) -process.hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", +process.hltIter2ElectronsPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", RegionFactoryPSet = cms.PSet( ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), RegionPSet = cms.PSet( @@ -5101,7 +5307,7 @@ ptMin = cms.double( 1.2 ), deltaEta = cms.double( 0.5 ), deltaPhi = cms.double( 0.5 ), - vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertexCollection = cms.InputTag( "hltPixelVerticesElectrons" ), input = cms.InputTag( "hltEgammaCandidates" ), mode = cms.string( "VerticesFixed" ), maxNRegions = cms.int32( 10 ), @@ -5128,7 +5334,7 @@ maxElement = cms.uint32( 100000 ), SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) ), - SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + SeedingLayers = cms.InputTag( "hltIter2ElectronsPixelLayerPairs" ) ), SeedCreatorPSet = cms.PSet( ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), @@ -5136,8 +5342,8 @@ ), TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) -process.hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", - src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), +process.hltIter2ElectronsCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2ElectronsPixelSeeds" ), maxSeedsBeforeCleaning = cms.uint32( 1000 ), SimpleMagneticField = cms.string( "ParabolicMf" ), TransientInitialStateEstimatorParameters = cms.PSet( @@ -5146,7 +5352,7 @@ propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) ), TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), cleanTrajectoryAfterInOut = cms.bool( False ), useHitsSplitting = cms.bool( False ), RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), @@ -5156,16 +5362,16 @@ NavigationSchool = cms.string( "SimpleNavigationSchool" ), TrajectoryBuilder = cms.string( "" ) ) -process.hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", - src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), +process.hltIter2ElectronsCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2ElectronsCkfTrackCandidates" ), SimpleMagneticField = cms.string( "ParabolicMf" ), clusterRemovalInfo = cms.InputTag( "" ), beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), - MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2ElectronsMaskedMeasurementTrackerEvent" ), Fitter = cms.string( "hltESPFittingSmootherIT" ), useHitsSplitting = cms.bool( False ), MeasurementTracker = cms.string( "" ), - AlgorithmName = cms.string( "iter2" ), + AlgorithmName = cms.string( "iter2IsoElectron" ), alias = cms.untracked.string( "ctfWithMaterialTracks" ), NavigationSchool = cms.string( "" ), TrajectoryInEvent = cms.bool( True ), @@ -5174,7 +5380,7 @@ useSimpleMF = cms.bool( True ), Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) ) -process.hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", +process.hltIter2ElectronsTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", max_d0 = cms.double( 100.0 ), minNumber3DLayers = cms.uint32( 0 ), max_lostHitFraction = cms.double( 1.0 ), @@ -5201,17 +5407,17 @@ max_z0 = cms.double( 100.0 ), useVertices = cms.bool( True ), min_nhits = cms.uint32( 0 ), - src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + src = cms.InputTag( "hltIter2ElectronsCtfWithMaterialTracks" ), max_minMissHitOutOrIn = cms.int32( 99 ), chi2n_no1Dmod_par = cms.double( 9999.0 ), - vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + vertices = cms.InputTag( "hltPixelVerticesElectrons" ), max_eta = cms.double( 9999.0 ), d0_par2 = cms.vdouble( 0.4, 4.0 ), d0_par1 = cms.vdouble( 0.3, 4.0 ), res_par = cms.vdouble( 0.003, 0.001 ), minHitsToBypassChecks = cms.uint32( 20 ) ) -process.hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", +process.hltIter2MergedForElectrons = cms.EDProducer( "SimpleTrackListMerger", ShareFrac = cms.double( 0.19 ), promoteTrackQuality = cms.bool( True ), MinPT = cms.double( 0.05 ), @@ -5220,44 +5426,48 @@ allowFirstHitShare = cms.bool( True ), newQuality = cms.string( "confirmed" ), MaxNormalizedChisq = cms.double( 1000.0 ), - TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + TrackProducer1 = cms.string( "hltIter1MergedForElectrons" ), MinFound = cms.int32( 3 ), - TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + TrackProducer2 = cms.string( "hltIter2ElectronsTrackSelectionHighPurity" ), LostHitPenalty = cms.double( 20.0 ), FoundHitBonus = cms.double( 5.0 ) ) -process.hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", +process.hltEgammaEleGsfTrackIso = cms.EDProducer( "EgammaHLTElectronTrackIsolationProducers", egTrkIsoStripEndcap = cms.double( 0.03 ), - egTrkIsoConeSize = cms.double( 0.29 ), - trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoVetoConeSizeBarrel = cms.double( 0.03 ), + useGsfTrack = cms.bool( True ), + useSCRefs = cms.bool( True ), + trackProducer = cms.InputTag( "hltIter2MergedForElectrons" ), egTrkIsoStripBarrel = cms.double( 0.03 ), - countTracks = cms.bool( False ), + electronProducer = cms.InputTag( "hltEgammaGsfElectrons" ), + egTrkIsoConeSize = cms.double( 0.3 ), egTrkIsoRSpan = cms.double( 999999.0 ), - egTrkIsoVetoConeSize = cms.double( 0.06 ), + egTrkIsoVetoConeSizeEndcap = cms.double( 0.03 ), recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + beamSpotProducer = cms.InputTag( "hltOnlineBeamSpot" ), egTrkIsoPtMin = cms.double( 1.0 ), - egTrkIsoZSpan = cms.double( 999999.0 ) + egTrkIsoZSpan = cms.double( 0.15 ) ) -process.hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", +process.hltEle27WP80GsfTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericFilter", doIsolated = cms.bool( True ), - thrOverE2EE = cms.double( 0.0 ), + thrOverE2EE = cms.double( -1.0 ), L1NonIsoCand = cms.InputTag( "" ), saveTags = cms.bool( True ), - thrOverE2EB = cms.double( 0.0 ), - thrRegularEE = cms.double( 3.5 ), - thrOverEEE = cms.double( 0.002 ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.05 ), L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), - thrOverEEB = cms.double( 0.002 ), - thrRegularEB = cms.double( 3.5 ), + thrOverEEB = cms.double( 0.05 ), + thrRegularEB = cms.double( -1.0 ), lessThan = cms.bool( True ), useEt = cms.bool( True ), ncandcut = cms.int32( 1 ), - isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), - candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + isoTag = cms.InputTag( "hltEgammaEleGsfTrackIso" ), + candTag = cms.InputTag( "hltEle27WP80GsfDphiFilter" ), nonIsoTag = cms.InputTag( "" ) ) -process.hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", - L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), +process.hltL1sL1SingleEG12 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleEG12" ), saveTags = cms.bool( True ), L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), L1UseL1TriggerObjectMaps = cms.bool( True ), @@ -5268,54 +5478,3291 @@ L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), L1TechTriggerSeeding = cms.bool( False ) ) -process.hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", +process.hltPrePhoton20CaloIdVLIsoL = cms.EDFilter( "HLTPrescaler", L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), offset = cms.uint32( 0 ) ) -process.hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", - Active_Area_Repeats = cms.int32( 5 ), - doAreaFastjet = cms.bool( False ), - voronoiRfact = cms.double( 0.9 ), - maxBadHcalCells = cms.uint32( 9999999 ), - doAreaDiskApprox = cms.bool( True ), - maxRecoveredEcalCells = cms.uint32( 9999999 ), - jetType = cms.string( "CaloJet" ), - minSeed = cms.uint32( 14327 ), - Ghost_EtaMax = cms.double( 6.0 ), - doRhoFastjet = cms.bool( False ), - jetAlgorithm = cms.string( "AntiKt" ), - nSigmaPU = cms.double( 1.0 ), - GhostArea = cms.double( 0.01 ), - Rho_EtaMax = cms.double( 4.4 ), - maxBadEcalCells = cms.uint32( 9999999 ), - useDeterministicSeed = cms.bool( True ), - doPVCorrection = cms.bool( False ), - maxRecoveredHcalCells = cms.uint32( 9999999 ), - rParam = cms.double( 0.4 ), - maxProblematicHcalCells = cms.uint32( 9999999 ), - doOutputJets = cms.bool( True ), - src = cms.InputTag( "hltTowerMakerForAll" ), - inputEtMin = cms.double( 0.3 ), - puPtMin = cms.double( 10.0 ), - srcPVs = cms.InputTag( "NotUsed" ), - jetPtMin = cms.double( 1.0 ), - radiusPU = cms.double( 0.4 ), - maxProblematicEcalCells = cms.uint32( 9999999 ), - doPUOffsetCorr = cms.bool( False ), - inputEMin = cms.double( 0.0 ), - useMassDropTagger = cms.bool( False ), - muMin = cms.double( -1.0 ), - subtractorName = cms.string( "" ), - muCut = cms.double( -1.0 ), - subjetPtMin = cms.double( -1.0 ), - useTrimming = cms.bool( False ), - muMax = cms.double( -1.0 ), - yMin = cms.double( -1.0 ), - useFiltering = cms.bool( False ), - rFilt = cms.double( -1.0 ), - yMax = cms.double( -1.0 ), - zcut = cms.double( -1.0 ), - MinVtxNdof = cms.int32( 5 ), +process.hltEGL1SingleEG12Filter = cms.EDFilter( "HLTEgammaL1MatchFilterRegional", + doIsolated = cms.bool( False ), + endcap_end = cms.double( 2.65 ), + saveTags = cms.bool( False ), + region_eta_size_ecap = cms.double( 1.0 ), + barrel_end = cms.double( 1.4791 ), + l1IsolatedTag = cms.InputTag( 'hltL1extraParticles','Isolated' ), + candIsolatedTag = cms.InputTag( "hltEgammaCandidates" ), + region_phi_size = cms.double( 1.044 ), + region_eta_size = cms.double( 0.522 ), + L1SeedFilterTag = cms.InputTag( "hltL1sL1SingleEG12" ), + candNonIsolatedTag = cms.InputTag( "" ), + l1NonIsolatedTag = cms.InputTag( 'hltL1extraParticles','NonIsolated' ), + ncandcut = cms.int32( 1 ) +) +process.hltEG20EtFilter = cms.EDFilter( "HLTEgammaEtFilter", + saveTags = cms.bool( False ), + L1NonIsoCand = cms.InputTag( "" ), + relaxed = cms.untracked.bool( False ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + inputTag = cms.InputTag( "hltEGL1SingleEG12Filter" ), + etcutEB = cms.double( 20.0 ), + etcutEE = cms.double( 20.0 ), + ncandcut = cms.int32( 1 ) +) +process.hltEG20CaloIdVLClusterShapeFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( 0.04 ), + thrOverEEE = cms.double( -1.0 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( -1.0 ), + thrRegularEB = cms.double( 0.024 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaClusterShape" ), + candTag = cms.InputTag( "hltEG20EtFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLHEFilter = cms.EDFilter( "HLTEgammaGenericFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( -1.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( -1.0 ), + thrRegularEE = cms.double( -1.0 ), + thrOverEEE = cms.double( 0.1 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.15 ), + thrRegularEB = cms.double( -1.0 ), + lessThan = cms.bool( True ), + useEt = cms.bool( False ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHoverE" ), + candTag = cms.InputTag( "hltEG20CaloIdVLClusterShapeFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLIsoLEcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 5.5 ), + thrOverEEE = cms.double( 0.012 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.012 ), + thrRegularEB = cms.double( 5.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaEcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltEG20CaloIdVLIsoLHcalIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( False ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.005 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.005 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHcalPFClusterIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLHEFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltPixelTracks = cms.EDProducer( "PixelTrackProducer", + FilterPSet = cms.PSet( + chi2 = cms.double( 1000.0 ), + nSigmaTipMaxTolerance = cms.double( 0.0 ), + ComponentName = cms.string( "PixelTrackFilterByKinematics" ), + nSigmaInvPtTolerance = cms.double( 0.0 ), + ptMin = cms.double( 0.1 ), + tipMax = cms.double( 1.0 ) + ), + useFilterWithES = cms.bool( False ), + passLabel = cms.string( "Pixel triplet primary tracks with vertex constraint" ), + FitterPSet = cms.PSet( + ComponentName = cms.string( "PixelFitterByHelixProjections" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + fixImpactParameter = cms.double( 0.0 ) + ), + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "GlobalRegionProducerFromBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + originHalfLength = cms.double( 24.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ), + CleanerPSet = cms.PSet( ComponentName = cms.string( "PixelTrackCleanerBySharedHits" ) ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.06 ), + useMultScattering = cms.bool( True ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "LowPtClusterShapeSeedComparitor" ), + clusterShapeCacheSrc = cms.InputTag( "hltSiPixelClustersCache" ) + ), + extraHitRZtolerance = cms.double( 0.06 ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ) + ), + SeedingLayers = cms.InputTag( "hltPixelLayerTriplets" ) + ) +) +process.hltPixelVerticesForPhotons = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparer" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( True ), + InputVertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFlowPixelSeedsFromPixelTracksForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1PixelLayerTripletsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 0.5 ), + input = cms.InputTag( "hltEgammaCandidates" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + zErrorBeamSpot = cms.double( 24.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + mode = cms.string( "VerticesFixed" ), + maxNVertices = cms.int32( 3 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTripletsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1ForPhotons" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLooseForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTightForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurityForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2ClustersRefRemovalForPhotons = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurityForPhotons" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemovalForPhotons" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2MaskedMeasurementTrackerEventForPhotons = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2PixelLayerPairsForPhotons = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemovalForPhotons" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2PFlowPixelSeedsForPhotons = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + ptMin = cms.double( 1.2 ), + deltaEta = cms.double( 0.5 ), + deltaPhi = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVerticesForPhotons" ), + input = cms.InputTag( "hltEgammaCandidates" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 10 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + maxNVertices = cms.int32( 3 ), + zErrorBeamSpot = cms.double( 24.2 ), + nSigmaZVertex = cms.double( 3.0 ), + nSigmaZBeamSpot = cms.double( 4.0 ), + zErrorVetex = cms.double( 0.2 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairsForPhotons" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2PFlowCkfTrackCandidatesForPhotons = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeedsForPhotons" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2PFlowCtfWithMaterialTracksForPhotons = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidatesForPhotons" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEventForPhotons" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2PFlowTrackSelectionHighPurityForPhotons = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracksForPhotons" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVerticesForPhotons" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2MergedForPhotons = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1MergedForPhotons" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurityForPhotons" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltEgammaHollowTrackIso = cms.EDProducer( "EgammaHLTPhotonTrackIsolationProducersRegional", + egTrkIsoStripEndcap = cms.double( 0.03 ), + egTrkIsoConeSize = cms.double( 0.29 ), + trackProducer = cms.InputTag( "hltIter2MergedForPhotons" ), + egTrkIsoStripBarrel = cms.double( 0.03 ), + countTracks = cms.bool( False ), + egTrkIsoRSpan = cms.double( 999999.0 ), + egTrkIsoVetoConeSize = cms.double( 0.06 ), + recoEcalCandidateProducer = cms.InputTag( "hltEgammaCandidates" ), + egTrkIsoPtMin = cms.double( 1.0 ), + egTrkIsoZSpan = cms.double( 999999.0 ) +) +process.hltEG20CaloIdVLIsoLTrackIsoFilter = cms.EDFilter( "HLTEgammaGenericQuadraticFilter", + doIsolated = cms.bool( True ), + thrOverE2EE = cms.double( 0.0 ), + L1NonIsoCand = cms.InputTag( "" ), + saveTags = cms.bool( True ), + thrOverE2EB = cms.double( 0.0 ), + thrRegularEE = cms.double( 3.5 ), + thrOverEEE = cms.double( 0.002 ), + L1IsoCand = cms.InputTag( "hltEgammaCandidates" ), + thrOverEEB = cms.double( 0.002 ), + thrRegularEB = cms.double( 3.5 ), + lessThan = cms.bool( True ), + useEt = cms.bool( True ), + ncandcut = cms.int32( 1 ), + isoTag = cms.InputTag( "hltEgammaHollowTrackIso" ), + candTag = cms.InputTag( "hltEG20CaloIdVLIsoLHcalIsoFilter" ), + nonIsoTag = cms.InputTag( "" ) +) +process.hltL1sL1SingleJet128 = cms.EDFilter( "HLTLevel1GTSeed", + L1SeedsLogicalExpression = cms.string( "L1_SingleJet128" ), + saveTags = cms.bool( True ), + L1MuonCollectionTag = cms.InputTag( "hltL1extraParticles" ), + L1UseL1TriggerObjectMaps = cms.bool( True ), + L1UseAliasesForSeeding = cms.bool( True ), + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + L1CollectionsTag = cms.InputTag( "hltL1extraParticles" ), + L1NrBxInEvent = cms.int32( 3 ), + L1GtObjectMapTag = cms.InputTag( "hltL1GtObjectMap" ), + L1TechTriggerSeeding = cms.bool( False ) +) +process.hltPrePFJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) +) +process.hltAK4CaloJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForAll" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltAK4CaloJetsIDPassed = cms.EDProducer( "HLTCaloJetIDProducer", + min_N90 = cms.int32( -2 ), + min_N90hits = cms.int32( 2 ), + min_EMF = cms.double( 1.0E-6 ), + jetsInput = cms.InputTag( "hltAK4CaloJets" ), + JetIDParams = cms.PSet( + useRecHits = cms.bool( True ), + hbheRecHitsColl = cms.InputTag( "hltHbhereco" ), + hoRecHitsColl = cms.InputTag( "hltHoreco" ), + hfRecHitsColl = cms.InputTag( "hltHfreco" ), + ebRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + eeRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) + ), + max_EMF = cms.double( 999.0 ) +) +process.hltFixedGridRhoFastjetAllCalo = cms.EDProducer( "FixedGridRhoProducerFastjet", + gridSpacing = cms.double( 0.55 ), + maxRapidity = cms.double( 5.0 ), + pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) +) +process.hltAK4CaloJetsCorrected = cms.EDProducer( "CaloJetCorrectionProducer", + src = cms.InputTag( "hltAK4CaloJets" ), + correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +) +process.hltAK4CaloJetsCorrectedIDPassed = cms.EDProducer( "CaloJetCorrectionProducer", + src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), + correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +) +process.hltSingleCaloJet200 = cms.EDFilter( "HLT1CaloJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 200.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltAK4CaloJetsCorrectedIDPassed" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +process.hltTowerMakerForPF = cms.EDProducer( "CaloTowersCreator", + EBSumThreshold = cms.double( 0.2 ), + MomHBDepth = cms.double( 0.2 ), + UseEtEBTreshold = cms.bool( False ), + hfInput = cms.InputTag( "hltHfreco" ), + AllowMissingInputs = cms.bool( False ), + MomEEDepth = cms.double( 0.0 ), + EESumThreshold = cms.double( 0.45 ), + HBGrid = cms.vdouble( ), + HcalAcceptSeverityLevelForRejectedHit = cms.uint32( 9999 ), + HBThreshold = cms.double( 0.4 ), + EcalSeveritiesToBeUsedInBadTowers = cms.vstring( ), + UseEcalRecoveredHits = cms.bool( False ), + MomConstrMethod = cms.int32( 1 ), + MomHEDepth = cms.double( 0.4 ), + HcalThreshold = cms.double( -1000.0 ), + HF2Weights = cms.vdouble( ), + HOWeights = cms.vdouble( ), + EEGrid = cms.vdouble( ), + UseSymEBTreshold = cms.bool( False ), + EEWeights = cms.vdouble( ), + EEWeight = cms.double( 1.0 ), + UseHO = cms.bool( False ), + HBWeights = cms.vdouble( ), + HF1Weight = cms.double( 1.0 ), + HF2Grid = cms.vdouble( ), + HEDWeights = cms.vdouble( ), + HEDGrid = cms.vdouble( ), + EBWeight = cms.double( 1.0 ), + HF1Grid = cms.vdouble( ), + EBWeights = cms.vdouble( ), + HOWeight = cms.double( 1.0 ), + HESWeight = cms.double( 1.0 ), + HESThreshold = cms.double( 0.4 ), + hbheInput = cms.InputTag( "hltHbhereco" ), + HF2Weight = cms.double( 1.0 ), + HF2Threshold = cms.double( 1.8 ), + HcalAcceptSeverityLevel = cms.uint32( 11 ), + EEThreshold = cms.double( 0.3 ), + HOThresholdPlus1 = cms.double( 1.1 ), + HOThresholdPlus2 = cms.double( 1.1 ), + HF1Weights = cms.vdouble( ), + hoInput = cms.InputTag( "hltHoreco" ), + HF1Threshold = cms.double( 1.2 ), + HOThresholdMinus1 = cms.double( 1.1 ), + HESGrid = cms.vdouble( ), + EcutTower = cms.double( -1000.0 ), + UseRejectedRecoveredEcalHits = cms.bool( False ), + UseEtEETreshold = cms.bool( False ), + HESWeights = cms.vdouble( ), + EcalRecHitSeveritiesToBeExcluded = cms.vstring( 'kTime', + 'kWeird', + 'kBad' ), + HEDWeight = cms.double( 1.0 ), + UseSymEETreshold = cms.bool( False ), + HEDThreshold = cms.double( 0.4 ), + EBThreshold = cms.double( 0.07 ), + UseRejectedHitsOnly = cms.bool( False ), + UseHcalRecoveredHits = cms.bool( True ), + HOThresholdMinus2 = cms.double( 1.1 ), + HOThreshold0 = cms.double( 1.1 ), + ecalInputs = cms.VInputTag( 'hltEcalRecHit:EcalRecHitsEB','hltEcalRecHit:EcalRecHitsEE' ), + UseRejectedRecoveredHcalHits = cms.bool( False ), + MomEBDepth = cms.double( 0.3 ), + HBWeight = cms.double( 1.0 ), + HOGrid = cms.vdouble( ), + EBGrid = cms.vdouble( ) +) +process.hltAK4CaloJetsPF = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "CaloJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTowerMakerForPF" ), + inputEtMin = cms.double( 0.3 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "NotUsed" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 5 ), + MaxVtxZ = cms.double( 15.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.0 ), + UseOnlyOnePV = cms.bool( False ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.0 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltAK4CaloJetsPFEt5 = cms.EDFilter( "EtMinCaloJetSelector", + filter = cms.bool( False ), + src = cms.InputTag( "hltAK4CaloJetsPF" ), + etMin = cms.double( 5.0 ) +) +process.hltPixelVertices = cms.EDProducer( "PixelVertexProducer", + WtAverage = cms.bool( True ), + Method2 = cms.bool( True ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + PVcomparer = cms.PSet( refToPSet_ = cms.string( "HLTPSetPvClusterComparerForIT" ) ), + Verbosity = cms.int32( 0 ), + UseError = cms.bool( True ), + TrackCollection = cms.InputTag( "hltPixelTracks" ), + PtMin = cms.double( 1.0 ), + NTrkMin = cms.int32( 2 ), + ZOffset = cms.double( 5.0 ), + Finder = cms.string( "DivisiveVertexFinder" ), + ZSeparation = cms.double( 0.05 ) +) +process.hltIter0PFLowPixelSeedsFromPixelTracks = cms.EDProducer( "SeedGeneratorFromProtoTracksEDProducer", + useEventsWithNoVertex = cms.bool( True ), + originHalfLength = cms.double( 0.3 ), + useProtoTrackKinematics = cms.bool( False ), + usePV = cms.bool( False ), + InputVertexCollection = cms.InputTag( "hltPixelVertices" ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + InputCollection = cms.InputTag( "hltPixelTracks" ), + originRadius = cms.double( 0.1 ) +) +process.hltIter0PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter0PFLowPixelSeedsFromPixelTracks" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter0PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter0PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter0PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltSiStripClusters" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter0" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter0PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter0PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltTrackIter0RefsForJets4Iter1 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter0TrackJets4Iter1 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltTrackIter0RefsForJets4Iter1" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter0TrackAndTauJets4Iter1 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter0TrackJets4Iter1" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ) +) +process.hltIter1ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter0PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 9.0 ), + minGoodStripCharge = cms.double( 50.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter1MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter1ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter1PixelLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter1ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter1PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + precise = cms.bool( True ), + deltaPhi = cms.double( 1.0 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.1 ), + originRadius = cms.double( 0.05 ), + measurementTrackerName = cms.string( "hltIter1MaskedMeasurementTrackerEvent" ), + deltaEta = cms.double( 1.0 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + searchOpt = cms.bool( True ), + input = cms.InputTag( "hltIter0TrackAndTauJets4Iter1" ), + ptMin = cms.double( 0.5 ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter1PixelLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter1PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter1PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter1PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter1PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter1PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter1MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter1" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter1PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.8, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter1PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter1PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter0PFlowTrackSelectionHighPurity" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter1PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter1TrackRefsForJets4Iter2 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter1Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter1TrackJets4Iter2 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter1TrackRefsForJets4Iter2" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 1.4 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter1TrackAndTauJets4Iter2 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 1.4 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter1TrackJets4Iter2" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter1Merged" ) +) +process.hltIter2ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter1PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter1ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter2MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter2ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter2PixelLayerPairs = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2', + 'BPix1+BPix3', + 'BPix2+BPix3', + 'BPix1+FPix1_pos', + 'BPix1+FPix1_neg', + 'BPix1+FPix2_pos', + 'BPix1+FPix2_neg', + 'BPix2+FPix1_pos', + 'BPix2+FPix1_neg', + 'BPix2+FPix2_pos', + 'BPix2+FPix2_neg', + 'FPix1_pos+FPix2_pos', + 'FPix1_neg+FPix2_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter2ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( ) +) +process.hltIter2PFlowPixelSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.025 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 1.2 ), + measurementTrackerName = cms.string( "hltIter2MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.8 ), + deltaEta = cms.double( 0.8 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter1TrackAndTauJets4Iter2" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitPairGenerator" ), + GeneratorPSet = cms.PSet( + maxElement = cms.uint32( 100000 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter2PixelLayerPairs" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter2PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter2PFlowPixelSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter2PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter2PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter2PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter2MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter2" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter2PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.4, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.35, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter2PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.4, 4.0 ), + d0_par1 = cms.vdouble( 0.3, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter2Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter1Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter2PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter2TrackRefsForJets4Iter3 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter2Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter2TrackJets4Iter3 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter2TrackRefsForJets4Iter3" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 3.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter2TrackAndTauJets4Iter3 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 3.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter2TrackJets4Iter3" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.7 ), + etaMaxCaloJet = cms.double( 2.7 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter2Merged" ) +) +process.hltIter3ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter2PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter2ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 60.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter3MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter3ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter3LayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'BPix1+BPix2+BPix3', + 'BPix1+BPix2+FPix1_pos', + 'BPix1+BPix2+FPix1_neg', + 'BPix1+FPix1_pos+FPix2_pos', + 'BPix1+FPix1_neg+FPix2_neg', + 'BPix2+FPix1_pos+FPix2_pos', + 'BPix2+FPix1_neg+FPix2_neg', + 'FPix1_pos+FPix2_pos+TEC1_pos', + 'FPix1_neg+FPix2_neg+TEC1_neg', + 'FPix2_pos+TEC2_pos+TEC3_pos', + 'FPix2_neg+TEC2_neg+TEC3_neg', + 'BPix2+BPix3+TIB1', + 'BPix2+BPix3+TIB2', + 'BPix1+BPix3+TIB1', + 'BPix1+BPix3+TIB2', + 'BPix1+BPix2+TIB1', + 'BPix1+BPix2+TIB2' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 1 ) + ), + MTID = cms.PSet( ), + FPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.0036 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0051 ) + ), + MTEC = cms.PSet( ), + MTIB = cms.PSet( ), + TID = cms.PSet( ), + TOB = cms.PSet( ), + BPix = cms.PSet( + HitProducer = cms.string( "hltSiPixelRecHits" ), + hitErrorRZ = cms.double( 0.006 ), + useErrorsFromParam = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBuilderPixelOnly" ), + skipClusters = cms.InputTag( "hltIter3ClustersRefRemoval" ), + hitErrorRPhi = cms.double( 0.0027 ) + ), + TIB = cms.PSet( TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) ) +) +process.hltIter3PFlowMixedSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 0.05 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter3MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 0.05 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter2TrackAndTauJets4Iter3" ) + ) + ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + maxElement = cms.uint32( 0 ), + ComponentName = cms.string( "StandardHitTripletGenerator" ), + GeneratorPSet = cms.PSet( + useBending = cms.bool( True ), + useFixedPreFiltering = cms.bool( False ), + maxElement = cms.uint32( 100000 ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.032 ), + useMultScattering = cms.bool( True ), + ComponentName = cms.string( "PixelTripletHLTGenerator" ), + extraHitRZtolerance = cms.double( 0.037 ), + SeedComparitorPSet = cms.PSet( ComponentName = cms.string( "none" ) ) + ), + SeedingLayers = cms.InputTag( "hltIter3LayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) +) +process.hltIter3PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter3PFlowMixedSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter3PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter3PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter3PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter3MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter3" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter3PFlowTrackSelectionHighPurityLoose = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 3 ), + chi2n_par = cms.double( 0.7 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 0.9, 3.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 0.85, 3.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 0.9, 3.0 ), + d0_par1 = cms.vdouble( 0.85, 3.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter3PFlowTrackSelectionHighPurityTight = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.4 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 1 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter3PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter3PFlowTrackSelectionHighPurity = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3PFlowTrackSelectionHighPurityLoose" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurityTight" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter3Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter2Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter3PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltIter3TrackRefsForJets4Iter4 = cms.EDProducer( "ChargedRefCandidateProducer", + src = cms.InputTag( "hltIter3Merged" ), + particleType = cms.string( "pi+" ) +) +process.hltAK4Iter3TrackJets4Iter4 = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( 0.9 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( False ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "TrackJet" ), + minSeed = cms.uint32( 14327 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltIter3TrackRefsForJets4Iter4" ), + inputEtMin = cms.double( 0.1 ), + puPtMin = cms.double( 0.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 4.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), + MaxVtxZ = cms.double( 30.0 ), + UseOnlyVertexTracks = cms.bool( False ), + dRMin = cms.double( -1.0 ), + nFilt = cms.int32( -1 ), + usePruning = cms.bool( False ), + maxDepth = cms.int32( -1 ), + yCut = cms.double( -1.0 ), + DzTrVtxMax = cms.double( 0.5 ), + UseOnlyOnePV = cms.bool( True ), + rcut_factor = cms.double( -1.0 ), + sumRecHits = cms.bool( False ), + trimPtFracMin = cms.double( -1.0 ), + dRMax = cms.double( -1.0 ), + DxyTrVtxMax = cms.double( 0.2 ), + useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) +) +process.hltIter3TrackAndTauJets4Iter4 = cms.EDProducer( "TauJetSelectorForHLTTrackSeeding", + fractionMinCaloInTauCone = cms.double( 0.7 ), + fractionMaxChargedPUInCaloCone = cms.double( 0.3 ), + tauConeSize = cms.double( 0.2 ), + ptTrkMaxInCaloCone = cms.double( 4.0 ), + isolationConeSize = cms.double( 0.5 ), + inputTrackJetTag = cms.InputTag( "hltAK4Iter3TrackJets4Iter4" ), + nTrkMaxInCaloCone = cms.int32( 0 ), + inputCaloJetTag = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + etaMinCaloJet = cms.double( -2.0 ), + etaMaxCaloJet = cms.double( 2.0 ), + ptMinCaloJet = cms.double( 5.0 ), + inputTrackTag = cms.InputTag( "hltIter3Merged" ) +) +process.hltIter4ClustersRefRemoval = cms.EDProducer( "HLTTrackClusterRemoverNew", + doStrip = cms.bool( True ), + doStripChargeCheck = cms.bool( True ), + trajectories = cms.InputTag( "hltIter3PFlowTrackSelectionHighPurity" ), + oldClusterRemovalInfo = cms.InputTag( "hltIter3ClustersRefRemoval" ), + stripClusters = cms.InputTag( "hltSiStripRawToClustersFacility" ), + pixelClusters = cms.InputTag( "hltSiPixelClusters" ), + Common = cms.PSet( + maxChi2 = cms.double( 16.0 ), + minGoodStripCharge = cms.double( 70.0 ) + ), + doPixel = cms.bool( True ) +) +process.hltIter4MaskedMeasurementTrackerEvent = cms.EDProducer( "MaskedMeasurementTrackerEventProducer", + clustersToSkip = cms.InputTag( "hltIter4ClustersRefRemoval" ), + OnDemand = cms.bool( False ), + src = cms.InputTag( "hltSiStripClusters" ) +) +process.hltIter4PixelLessLayerTriplets = cms.EDProducer( "SeedingLayersEDProducer", + layerList = cms.vstring( 'TIB1+TIB2+MTIB3', + 'TIB1+TIB2+MTID1_pos', + 'TIB1+TIB2+MTID1_neg', + 'TID1_pos+TID2_pos+TID3_pos', + 'TID1_neg+TID2_neg+TID3_neg', + 'TID1_pos+TID2_pos+MTID3_pos', + 'TID1_neg+TID2_neg+MTID3_neg' ), + MTOB = cms.PSet( ), + TEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ) + ), + MTID = cms.PSet( + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + FPix = cms.PSet( ), + MTEC = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ), + useRingSlector = cms.bool( True ), + minRing = cms.int32( 3 ), + maxRing = cms.int32( 3 ) + ), + MTIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TID = cms.PSet( + useRingSlector = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + minRing = cms.int32( 1 ), + maxRing = cms.int32( 2 ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ), + TOB = cms.PSet( ), + BPix = cms.PSet( ), + TIB = cms.PSet( + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + skipClusters = cms.InputTag( "hltIter4ClustersRefRemoval" ) + ) +) +process.hltIter4PFlowPixelLessSeeds = cms.EDProducer( "SeedGeneratorFromRegionHitsEDProducer", + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string( "CandidateSeededTrackingRegionsProducer" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originRadius = cms.double( 1.0 ), + searchOpt = cms.bool( True ), + ptMin = cms.double( 0.8 ), + measurementTrackerName = cms.string( "hltIter4MaskedMeasurementTrackerEvent" ), + deltaPhi = cms.double( 0.5 ), + deltaEta = cms.double( 0.5 ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + mode = cms.string( "VerticesFixed" ), + maxNRegions = cms.int32( 100 ), + maxNVertices = cms.int32( 1 ), + zErrorBeamSpot = cms.double( 15.0 ), + nSigmaZBeamSpot = cms.double( 3.0 ), + zErrorVetex = cms.double( 12.0 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + input = cms.InputTag( "hltIter3TrackAndTauJets4Iter4" ) + ), + RegionPsetFomBeamSpotBlockFixedZ = cms.PSet( + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + RegionPSet = cms.PSet( + precise = cms.bool( True ), + originHalfLength = cms.double( 21.2 ), + originRadius = cms.double( 0.2 ), + ptMin = cms.double( 0.9 ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ) + ) + ) + ), + SeedComparitorPSet = cms.PSet( + ComponentName = cms.string( "PixelClusterShapeSeedComparitor" ), + FilterAtHelixStage = cms.bool( True ), + FilterPixelHits = cms.bool( False ), + FilterStripHits = cms.bool( False ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ) + ), + ClusterCheckPSet = cms.PSet( + PixelClusterCollectionLabel = cms.InputTag( "hltSiPixelClusters" ), + MaxNumberOfCosmicClusters = cms.uint32( 50000 ), + doClusterCheck = cms.bool( False ), + ClusterCollectionLabel = cms.InputTag( "hltSiStripClusters" ), + MaxNumberOfPixelClusters = cms.uint32( 10000 ) + ), + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardMultiHitGenerator" ), + GeneratorPSet = cms.PSet( + ComponentName = cms.string( "MultiHitGeneratorFromChi2" ), + useFixedPreFiltering = cms.bool( False ), + phiPreFiltering = cms.double( 0.3 ), + extraHitRPhitolerance = cms.double( 0.0 ), + extraHitRZtolerance = cms.double( 0.0 ), + extraZKDBox = cms.double( 0.2 ), + extraRKDBox = cms.double( 0.2 ), + extraPhiKDBox = cms.double( 0.005 ), + fnSigmaRZ = cms.double( 2.0 ), + refitHits = cms.bool( True ), + ClusterShapeHitFilterName = cms.string( "ClusterShapeHitFilter" ), + maxChi2 = cms.double( 5.0 ), + chi2VsPtCut = cms.bool( True ), + pt_interv = cms.vdouble( 0.4, 0.7, 1.0, 2.0 ), + chi2_cuts = cms.vdouble( 3.0, 4.0, 5.0, 5.0 ), + debug = cms.bool( False ), + detIdsToDebug = cms.vint32( 0, 0, 0 ), + maxElement = cms.uint32( 100000 ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ) + ), + SeedingLayers = cms.InputTag( "hltIter4PixelLessLayerTriplets" ) + ), + SeedCreatorPSet = cms.PSet( + ComponentName = cms.string( "SeedFromConsecutiveHitsTripletOnlyCreator" ), + propagator = cms.string( "PropagatorWithMaterialParabolicMf" ) + ), + TTRHBuilder = cms.string( "WithTrackAngle" ) +) +process.hltIter4PFlowCkfTrackCandidates = cms.EDProducer( "CkfTrackCandidateMaker", + src = cms.InputTag( "hltIter4PFlowPixelLessSeeds" ), + maxSeedsBeforeCleaning = cms.uint32( 1000 ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + TransientInitialStateEstimatorParameters = cms.PSet( + propagatorAlongTISE = cms.string( "PropagatorWithMaterialParabolicMf" ), + numberMeasurementsForFit = cms.int32( 4 ), + propagatorOppositeTISE = cms.string( "PropagatorWithMaterialParabolicMfOpposite" ) + ), + TrajectoryCleaner = cms.string( "hltESPTrajectoryCleanerBySharedHits" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + cleanTrajectoryAfterInOut = cms.bool( False ), + useHitsSplitting = cms.bool( False ), + RedundantSeedCleaner = cms.string( "CachingSeedCleanerBySharedInput" ), + doSeedingRegionRebuilding = cms.bool( False ), + maxNSeeds = cms.uint32( 100000 ), + TrajectoryBuilderPSet = cms.PSet( refToPSet_ = cms.string( "HLTIter4PSetTrajectoryBuilderIT" ) ), + NavigationSchool = cms.string( "SimpleNavigationSchool" ), + TrajectoryBuilder = cms.string( "" ) +) +process.hltIter4PFlowCtfWithMaterialTracks = cms.EDProducer( "TrackProducer", + src = cms.InputTag( "hltIter4PFlowCkfTrackCandidates" ), + SimpleMagneticField = cms.string( "ParabolicMf" ), + clusterRemovalInfo = cms.InputTag( "" ), + beamSpot = cms.InputTag( "hltOnlineBeamSpot" ), + MeasurementTrackerEvent = cms.InputTag( "hltIter4MaskedMeasurementTrackerEvent" ), + Fitter = cms.string( "hltESPFittingSmootherIT" ), + useHitsSplitting = cms.bool( False ), + MeasurementTracker = cms.string( "" ), + AlgorithmName = cms.string( "iter4" ), + alias = cms.untracked.string( "ctfWithMaterialTracks" ), + NavigationSchool = cms.string( "" ), + TrajectoryInEvent = cms.bool( True ), + TTRHBuilder = cms.string( "hltESPTTRHBWithTrackAngle" ), + GeometricInnerState = cms.bool( True ), + useSimpleMF = cms.bool( True ), + Propagator = cms.string( "hltESPRungeKuttaTrackerPropagator" ) +) +process.hltIter4PFlowTrackSelectionHighPurity = cms.EDProducer( "AnalyticalTrackSelector", + max_d0 = cms.double( 100.0 ), + minNumber3DLayers = cms.uint32( 0 ), + max_lostHitFraction = cms.double( 1.0 ), + applyAbsCutsIfNoPV = cms.bool( False ), + qualityBit = cms.string( "highPurity" ), + minNumberLayers = cms.uint32( 5 ), + chi2n_par = cms.double( 0.25 ), + useVtxError = cms.bool( False ), + nSigmaZ = cms.double( 3.0 ), + dz_par2 = cms.vdouble( 1.0, 4.0 ), + applyAdaptedPVCuts = cms.bool( True ), + min_eta = cms.double( -9999.0 ), + dz_par1 = cms.vdouble( 1.0, 4.0 ), + copyTrajectories = cms.untracked.bool( True ), + vtxNumber = cms.int32( -1 ), + max_d0NoPV = cms.double( 100.0 ), + keepAllTracks = cms.bool( False ), + maxNumberLostLayers = cms.uint32( 0 ), + beamspot = cms.InputTag( "hltOnlineBeamSpot" ), + max_relpterr = cms.double( 9999.0 ), + copyExtras = cms.untracked.bool( True ), + max_z0NoPV = cms.double( 100.0 ), + vertexCut = cms.string( "tracksSize>=3" ), + max_z0 = cms.double( 100.0 ), + useVertices = cms.bool( True ), + min_nhits = cms.uint32( 0 ), + src = cms.InputTag( "hltIter4PFlowCtfWithMaterialTracks" ), + max_minMissHitOutOrIn = cms.int32( 99 ), + chi2n_no1Dmod_par = cms.double( 9999.0 ), + vertices = cms.InputTag( "hltPixelVertices" ), + max_eta = cms.double( 9999.0 ), + d0_par2 = cms.vdouble( 1.0, 4.0 ), + d0_par1 = cms.vdouble( 1.0, 4.0 ), + res_par = cms.vdouble( 0.003, 0.001 ), + minHitsToBypassChecks = cms.uint32( 20 ) +) +process.hltIter4Merged = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltIter3Merged" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4PFlowTrackSelectionHighPurity" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltPFMuonMerging = cms.EDProducer( "SimpleTrackListMerger", + ShareFrac = cms.double( 0.19 ), + promoteTrackQuality = cms.bool( True ), + MinPT = cms.double( 0.05 ), + copyExtras = cms.untracked.bool( True ), + Epsilon = cms.double( -0.001 ), + allowFirstHitShare = cms.bool( True ), + newQuality = cms.string( "confirmed" ), + MaxNormalizedChisq = cms.double( 1000.0 ), + TrackProducer1 = cms.string( "hltL3TkTracksFromL2" ), + MinFound = cms.int32( 3 ), + TrackProducer2 = cms.string( "hltIter4Merged" ), + LostHitPenalty = cms.double( 20.0 ), + FoundHitBonus = cms.double( 5.0 ) +) +process.hltMuonLinks = cms.EDProducer( "MuonLinksProducerForHLT", + pMin = cms.double( 2.5 ), + InclusiveTrackerTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + shareHitFraction = cms.double( 0.8 ), + LinkCollection = cms.InputTag( "hltL3MuonsLinksCombination" ), + ptMin = cms.double( 2.5 ) +) +process.hltMuons = cms.EDProducer( "MuonIdProducer", + TrackExtractorPSet = cms.PSet( + Diff_z = cms.double( 0.2 ), + inputTrackCollection = cms.InputTag( "hltPFMuonMerging" ), + BeamSpotLabel = cms.InputTag( "hltOnlineBeamSpot" ), + ComponentName = cms.string( "TrackExtractor" ), + DR_Max = cms.double( 1.0 ), + Diff_r = cms.double( 0.1 ), + Chi2Prob_Min = cms.double( -1.0 ), + DR_Veto = cms.double( 0.01 ), + NHits_Min = cms.uint32( 0 ), + Chi2Ndof_Max = cms.double( 1.0E64 ), + Pt_Min = cms.double( -1.0 ), + DepositLabel = cms.untracked.string( "" ), + BeamlineOption = cms.string( "BeamSpotFromEvent" ) + ), + maxAbsEta = cms.double( 3.0 ), + fillGlobalTrackRefits = cms.bool( False ), + arbitrationCleanerOptions = cms.PSet( + Clustering = cms.bool( True ), + ME1a = cms.bool( True ), + ClusterDPhi = cms.double( 0.6 ), + OverlapDTheta = cms.double( 0.02 ), + Overlap = cms.bool( True ), + OverlapDPhi = cms.double( 0.0786 ), + ClusterDTheta = cms.double( 0.02 ) + ), + globalTrackQualityInputTag = cms.InputTag( "glbTrackQual" ), + addExtraSoftMuons = cms.bool( False ), + debugWithTruthMatching = cms.bool( False ), + CaloExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + DR_Max = cms.double( 1.0 ), + DepositInstanceLabels = cms.vstring( 'ecal', + 'hcal', + 'ho' ), + Noise_HE = cms.double( 0.2 ), + NoiseTow_EB = cms.double( 0.04 ), + NoiseTow_EE = cms.double( 0.15 ), + Threshold_H = cms.double( 0.5 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + Threshold_E = cms.double( 0.2 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + DepositLabel = cms.untracked.string( "Cal" ), + UseRecHitsFlag = cms.bool( False ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 1.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 1.0 ), + dREcalPreselection = cms.double( 1.0 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 1.0 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + Threshold_HO = cms.double( 0.5 ), + Noise_EE = cms.double( 0.1 ), + Noise_EB = cms.double( 0.025 ), + DR_Veto_H = cms.double( 0.1 ), + CenterConeOnCalIntersection = cms.bool( False ), + ComponentName = cms.string( "CaloExtractorByAssociator" ), + Noise_HB = cms.double( 0.2 ), + DR_Veto_E = cms.double( 0.07 ), + DR_Veto_HO = cms.double( 0.1 ), + Noise_HO = cms.double( 0.2 ) + ), + runArbitrationCleaner = cms.bool( False ), + fillEnergy = cms.bool( True ), + TrackerKinkFinderParameters = cms.PSet( + usePosition = cms.bool( False ), + diagonalOnly = cms.bool( False ) + ), + TimingFillerParameters = cms.PSet( + UseDT = cms.bool( True ), + ErrorDT = cms.double( 6.0 ), + EcalEnergyCut = cms.double( 0.4 ), + ErrorEB = cms.double( 2.085 ), + ErrorCSC = cms.double( 7.4 ), + CSCTimingParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + CSCTimeOffset = cms.double( 0.0 ), + CSCStripTimeOffset = cms.double( 0.0 ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + UseStripTime = cms.bool( True ), + CSCStripError = cms.double( 7.0 ), + CSCWireError = cms.double( 8.6 ), + CSCWireTimeOffset = cms.double( 0.0 ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ), + PruneCut = cms.double( 100.0 ), + UseWireTime = cms.bool( True ) + ), + DTTimingParameters = cms.PSet( + HitError = cms.double( 6.0 ), + DoWireCorr = cms.bool( False ), + MatchParameters = cms.PSet( + CSCsegments = cms.InputTag( "hltCscSegments" ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + DTradius = cms.double( 0.01 ), + TightMatchDT = cms.bool( False ), + TightMatchCSC = cms.bool( True ) + ), + debug = cms.bool( False ), + DTsegments = cms.InputTag( "hltDt4DSegments" ), + PruneCut = cms.double( 10000.0 ), + RequireBothProjections = cms.bool( False ), + HitsMin = cms.int32( 5 ), + DTTimeOffset = cms.double( 2.7 ), + DropTheta = cms.bool( True ), + UseSegmentT0 = cms.bool( False ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( True ) + ) + ), + ErrorEE = cms.double( 6.95 ), + UseCSC = cms.bool( True ), + UseECAL = cms.bool( True ) + ), + inputCollectionTypes = cms.vstring( 'inner tracks', + 'links', + 'outer tracks' ), + minCaloCompatibility = cms.double( 0.6 ), + ecalDepositName = cms.string( "ecal" ), + minP = cms.double( 10.0 ), + fillIsolation = cms.bool( True ), + jetDepositName = cms.string( "jets" ), + hoDepositName = cms.string( "ho" ), + writeIsoDeposits = cms.bool( False ), + maxAbsPullX = cms.double( 4.0 ), + maxAbsPullY = cms.double( 9999.0 ), + minPt = cms.double( 10.0 ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 9999.0 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( True ), + dREcal = cms.double( 9999.0 ), + dREcalPreselection = cms.double( 0.05 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( True ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.2 ), + useMuon = cms.bool( True ), + useCalo = cms.bool( False ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( True ) + ), + JetExtractorPSet = cms.PSet( + PrintTimeReport = cms.untracked.bool( False ), + ExcludeMuonVeto = cms.bool( True ), + TrackAssociatorParameters = cms.PSet( + muonMaxDistanceSigmaX = cms.double( 0.0 ), + muonMaxDistanceSigmaY = cms.double( 0.0 ), + CSCSegmentCollectionLabel = cms.InputTag( "hltCscSegments" ), + dRHcal = cms.double( 0.5 ), + dRPreshowerPreselection = cms.double( 0.2 ), + CaloTowerCollectionLabel = cms.InputTag( "hltTowerMakerForPF" ), + useEcal = cms.bool( False ), + dREcal = cms.double( 0.5 ), + dREcalPreselection = cms.double( 0.5 ), + HORecHitCollectionLabel = cms.InputTag( "hltHoreco" ), + dRMuon = cms.double( 9999.0 ), + propagateAllDirections = cms.bool( True ), + muonMaxDistanceX = cms.double( 5.0 ), + muonMaxDistanceY = cms.double( 5.0 ), + useHO = cms.bool( False ), + trajectoryUncertaintyTolerance = cms.double( -1.0 ), + usePreshower = cms.bool( False ), + DTRecSegment4DCollectionLabel = cms.InputTag( "hltDt4DSegments" ), + EERecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + dRHcalPreselection = cms.double( 0.5 ), + useMuon = cms.bool( False ), + useCalo = cms.bool( True ), + accountForTrajectoryChangeCalo = cms.bool( False ), + EBRecHitCollectionLabel = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + dRMuonPreselection = cms.double( 0.2 ), + truthMatch = cms.bool( False ), + HBHERecHitCollectionLabel = cms.InputTag( "hltHbhereco" ), + useHcal = cms.bool( False ) + ), + ServiceParameters = cms.PSet( + Propagators = cms.untracked.vstring( 'hltESPFastSteppingHelixPropagatorAny' ), + RPCLayers = cms.bool( False ), + UseMuonNavigation = cms.untracked.bool( False ) + ), + ComponentName = cms.string( "JetExtractor" ), + DR_Max = cms.double( 1.0 ), + PropagatorName = cms.string( "hltESPFastSteppingHelixPropagatorAny" ), + JetCollectionLabel = cms.InputTag( "hltAK4CaloJetsPFEt5" ), + DR_Veto = cms.double( 0.1 ), + Threshold = cms.double( 5.0 ) + ), + fillGlobalTrackQuality = cms.bool( False ), + minPCaloMuon = cms.double( 1.0E9 ), + maxAbsDy = cms.double( 9999.0 ), + fillCaloCompatibility = cms.bool( True ), + fillMatching = cms.bool( True ), + MuonCaloCompatibility = cms.PSet( + allSiPMHO = cms.bool( False ), + PionTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_pions_lowPt_3_1_norm.root" ), + MuonTemplateFileName = cms.FileInPath( "RecoMuon/MuonIdentification/data/MuID_templates_muons_lowPt_3_1_norm.root" ), + delta_eta = cms.double( 0.02 ), + delta_phi = cms.double( 0.02 ) + ), + fillTrackerKink = cms.bool( False ), + hcalDepositName = cms.string( "hcal" ), + sigmaThresholdToFillCandidateP4WithGlobalFit = cms.double( 2.0 ), + inputCollectionLabels = cms.VInputTag( 'hltPFMuonMerging','hltMuonLinks','hltL2Muons' ), + trackDepositName = cms.string( "tracker" ), + maxAbsDx = cms.double( 3.0 ), + ptThresholdToFillCandidateP4WithGlobalFit = cms.double( 200.0 ), + minNumberOfMatches = cms.int32( 1 ) +) +process.hltParticleFlowRecHitECALUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.08 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEBRecHitCreator" ) + ), + cms.PSet( src = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 0.3 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ), + cms.PSet( timingCleaning = cms.bool( True ), + topologicalCleaning = cms.bool( True ), + cleaningThreshold = cms.double( 2.0 ), + skipTTRecoveredHits = cms.bool( True ), + name = cms.string( "PFRecHitQTestECAL" ) + ) + ), + name = cms.string( "PFEERecHitCreator" ) + ) + ), + navigator = cms.PSet( + barrel = cms.PSet( ), + endcap = cms.PSet( ), + name = cms.string( "PFRecHitECALNavigator" ) + ) +) +process.hltParticleFlowRecHitHCAL = cms.EDProducer( "PFCTRecHitProducer", + ECAL_Compensate = cms.bool( False ), + ECAL_Dead_Code = cms.uint32( 10 ), + MinLongTiming_Cut = cms.double( -5.0 ), + ECAL_Compensation = cms.double( 0.5 ), + MaxLongTiming_Cut = cms.double( 5.0 ), + weight_HFhad = cms.double( 1.0 ), + ApplyPulseDPG = cms.bool( False ), + navigator = cms.PSet( name = cms.string( "PFRecHitCaloTowerNavigator" ) ), + ECAL_Threshold = cms.double( 10.0 ), + ApplyTimeDPG = cms.bool( False ), + caloTowers = cms.InputTag( "hltTowerMakerForPF" ), + hcalRecHitsHBHE = cms.InputTag( "hltHbhereco" ), + LongFibre_Fraction = cms.double( 0.1 ), + MaxShortTiming_Cut = cms.double( 5.0 ), + HcalMaxAllowedHFLongShortSev = cms.int32( 9 ), + thresh_Barrel = cms.double( 0.4 ), + navigation_HF = cms.bool( True ), + HcalMaxAllowedHFInTimeWindowSev = cms.int32( 9 ), + HF_Calib_29 = cms.double( 1.07 ), + LongFibre_Cut = cms.double( 120.0 ), + EM_Depth = cms.double( 22.0 ), + weight_HFem = cms.double( 1.0 ), + LongShortFibre_Cut = cms.double( 1.0E9 ), + MinShortTiming_Cut = cms.double( -5.0 ), + HCAL_Calib = cms.bool( True ), + thresh_HF = cms.double( 0.4 ), + HcalMaxAllowedHFDigiTimeSev = cms.int32( 9 ), + thresh_Endcap = cms.double( 0.4 ), + HcalMaxAllowedChannelStatusSev = cms.int32( 9 ), + hcalRecHitsHF = cms.InputTag( "hltHfreco" ), + ShortFibre_Cut = cms.double( 60.0 ), + ApplyLongShortDPG = cms.bool( True ), + HF_Calib = cms.bool( True ), + HAD_Depth = cms.double( 47.0 ), + ShortFibre_Fraction = cms.double( 0.01 ), + HCAL_Calib_29 = cms.double( 1.35 ) +) +process.hltParticleFlowRecHitPSUnseeded = cms.EDProducer( "PFRecHitProducer", + producers = cms.VPSet( + cms.PSet( src = cms.InputTag( 'hltEcalPreshowerRecHit','EcalRecHitsES' ), + qualityTests = cms.VPSet( + cms.PSet( threshold = cms.double( 7.0E-6 ), + name = cms.string( "PFRecHitQTestThreshold" ) + ) + ), + name = cms.string( "PFPSRecHitCreator" ) + ) + ), + navigator = cms.PSet( name = cms.string( "PFRecHitPreshowerNavigator" ) ) +) +process.hltParticleFlowClusterECALUncorrectedUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 9 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + positionCalcForConvergence = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 1.5 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "ECAL_BARREL" ), + recHitEnergyNorm = cms.double( 0.08 ) + ), + cms.PSet( detector = cms.string( "ECAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.3 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.08 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( + minFractionInCalc = cms.double( 0.0 ), + W0 = cms.double( 4.2 ), + minAllowedNormalization = cms.double( 0.0 ), + T0_EB = cms.double( 7.4 ), + X0 = cms.double( 0.89 ), + T0_ES = cms.double( 1.2 ), + T0_EE = cms.double( 3.1 ), + algoName = cms.string( "ECAL2DPositionCalcWithDepthCorr" ) + ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.08 ), + detector = cms.string( "ECAL_BARREL" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.3 ), + detector = cms.string( "ECAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( 0.04 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 10.0 ), + minS4S1_b = cms.double( -0.024 ), + singleSpikeThresh = cms.double( 4.0 ), + detector = cms.string( "ECAL_BARREL" ), + minS4S1_a = cms.double( 0.04 ), + energyThresholdModifier = cms.double( 2.0 ) + ), + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 3.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.0125 ), + singleSpikeThresh = cms.double( 15.0 ), + detector = cms.string( "ECAL_ENDCAP" ), + minS4S1_a = cms.double( 0.02 ), + energyThresholdModifier = cms.double( 2.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 8 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.6 ), + seedingThresholdPt = cms.double( 0.15 ), + detector = cms.string( "ECAL_ENDCAP" ) + ), + cms.PSet( seedingThreshold = cms.double( 0.23 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "ECAL_BARREL" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitECALUnseeded" ) +) +process.hltParticleFlowClusterPSUnseeded = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + minFracTot = cms.double( 1.0E-20 ), + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 6.0E-5 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 0.3 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "PS1" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ), + cms.PSet( detector = cms.string( "PS2" ), + recHitEnergyNorm = cms.double( 6.0E-5 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 6.0E-5 ), + detector = cms.string( "PS2" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.2E-4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "PS2" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitPSUnseeded" ) +) +process.hltParticleFlowClusterECALUnseeded = cms.EDProducer( "CorrectedECALPFClusterProducer", + minimumPSEnergy = cms.double( 0.0 ), + inputPS = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ), + energyCorrector = cms.PSet( + applyCrackCorrections = cms.bool( False ), + algoName = cms.string( "PFClusterEMEnergyCorrector" ) + ), + inputECAL = cms.InputTag( "hltParticleFlowClusterECALUncorrectedUnseeded" ) +) +process.hltParticleFlowClusterHCAL = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HCAL_BARREL1" ), + recHitEnergyNorm = cms.double( 0.8 ) + ), + cms.PSet( detector = cms.string( "HCAL_ENDCAP" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_BARREL1" ), + gatheringThresholdPt = cms.double( 0.0 ) + ), + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HCAL_ENDCAP" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( True ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( algoName = cms.string( "RBXAndHPDCleaner" ) ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 4 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 0.8 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_BARREL1" ) + ), + cms.PSet( seedingThreshold = cms.double( 1.1 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HCAL_ENDCAP" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( "hltParticleFlowRecHitHCAL" ) +) +process.hltParticleFlowClusterHFEM = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_EM" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_EM" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.19 ), + singleSpikeThresh = cms.double( 80.0 ), + detector = cms.string( "HF_EM" ), + minS4S1_a = cms.double( 0.11 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_EM" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFEM' ) +) +process.hltParticleFlowClusterHFHAD = cms.EDProducer( "PFClusterProducer", + pfClusterBuilder = cms.PSet( + positionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( 5 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ), + minFracTot = cms.double( 1.0E-20 ), + maxIterations = cms.uint32( 50 ), + stoppingTolerance = cms.double( 1.0E-8 ), + minFractionToKeep = cms.double( 1.0E-7 ), + excludeOtherSeeds = cms.bool( True ), + showerSigma = cms.double( 10.0 ), + recHitEnergyNorms = cms.VPSet( + cms.PSet( detector = cms.string( "HF_HAD" ), + recHitEnergyNorm = cms.double( 0.8 ) + ) + ), + algoName = cms.string( "Basic2DGenericPFlowClusterizer" ), + allCellsPositionCalc = cms.PSet( + minFractionInCalc = cms.double( 1.0E-9 ), + logWeightDenominator = cms.double( 0.8 ), + minAllowedNormalization = cms.double( 1.0E-9 ), + posCalcNCrystals = cms.int32( -1 ), + algoName = cms.string( "Basic2DGenericPFlowPositionCalc" ) + ) + ), + positionReCalc = cms.PSet( ), + initialClusteringStep = cms.PSet( + thresholdsByDetector = cms.VPSet( + cms.PSet( gatheringThreshold = cms.double( 0.8 ), + detector = cms.string( "HF_HAD" ), + gatheringThresholdPt = cms.double( 0.0 ) + ) + ), + useCornerCells = cms.bool( False ), + algoName = cms.string( "Basic2DGenericTopoClusterizer" ) + ), + energyCorrector = cms.PSet( ), + recHitCleaners = cms.VPSet( + cms.PSet( cleaningByDetector = cms.VPSet( + cms.PSet( doubleSpikeS6S2 = cms.double( -1.0 ), + fractionThresholdModifier = cms.double( 1.0 ), + doubleSpikeThresh = cms.double( 1.0E9 ), + minS4S1_b = cms.double( -0.08 ), + singleSpikeThresh = cms.double( 120.0 ), + detector = cms.string( "HF_HAD" ), + minS4S1_a = cms.double( 0.045 ), + energyThresholdModifier = cms.double( 1.0 ) + ) +), + algoName = cms.string( "SpikeAndDoubleSpikeCleaner" ) + ) + ), + seedFinder = cms.PSet( + nNeighbours = cms.int32( 0 ), + thresholdsByDetector = cms.VPSet( + cms.PSet( seedingThreshold = cms.double( 1.4 ), + seedingThresholdPt = cms.double( 0.0 ), + detector = cms.string( "HF_HAD" ) + ) + ), + algoName = cms.string( "LocalMaximumSeedFinder" ) + ), + recHitsSource = cms.InputTag( 'hltParticleFlowRecHitHCAL','HFHAD' ) +) +process.hltLightPFTracks = cms.EDProducer( "LightPFTrackProducer", + TrackQuality = cms.string( "none" ), + UseQuality = cms.bool( False ), + TkColList = cms.VInputTag( 'hltPFMuonMerging' ) +) +process.hltParticleFlowBlock = cms.EDProducer( "PFBlockProducer", + debug = cms.untracked.bool( False ), + linkDefinitions = cms.VPSet( + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS1:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "PS2:ECAL" ), + linkerName = cms.string( "PreshowerAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:ECAL" ), + linkerName = cms.string( "TrackAndECALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( True ), + linkType = cms.string( "TRACK:HCAL" ), + linkerName = cms.string( "TrackAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "ECAL:HCAL" ), + linkerName = cms.string( "ECALAndHCALLinker" ) + ), + cms.PSet( useKDTree = cms.bool( False ), + linkType = cms.string( "HFEM:HFHAD" ), + linkerName = cms.string( "HFEMAndHFHADLinker" ) + ) + ), + elementImporters = cms.VPSet( + cms.PSet( importerName = cms.string( "GeneralTracksImporter" ), + useIterativeTracking = cms.bool( False ), + source = cms.InputTag( "hltLightPFTracks" ), + NHitCuts_byTrackAlgo = cms.vuint32( 3, 3, 3, 3, 3 ), + muonSrc = cms.InputTag( "hltMuons" ), + DPtOverPtCuts_byTrackAlgo = cms.vdouble( 0.5, 0.5, 0.5, 0.5, 0.5 ) + ), + cms.PSet( importerName = cms.string( "ECALClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterECALUnseeded" ), + BCtoPFCMap = cms.InputTag( "" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHCAL" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFEM" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterHFHAD" ) + ), + cms.PSet( importerName = cms.string( "GenericClusterImporter" ), + source = cms.InputTag( "hltParticleFlowClusterPSUnseeded" ) + ) + ), + verbose = cms.untracked.bool( False ) +) +process.hltParticleFlow = cms.EDProducer( "PFProducer", + photon_SigmaiEtaiEta_endcap = cms.double( 0.034 ), + minPtForPostCleaning = cms.double( 20.0 ), + pf_nsigma_ECAL = cms.double( 0.0 ), + GedPhotonValueMap = cms.InputTag( 'tmpGedPhotons','valMapPFEgammaCandToPhoton' ), + sumPtTrackIsoForPhoton = cms.double( -1.0 ), + metFactorForFakes = cms.double( 4.0 ), + muon_HO = cms.vdouble( 0.9, 0.9 ), + electron_missinghits = cms.uint32( 1 ), + metSignificanceForCleaning = cms.double( 3.0 ), + usePFPhotons = cms.bool( False ), + dptRel_DispVtx = cms.double( 10.0 ), + nTrackIsoForEgammaSC = cms.uint32( 2 ), + pf_nsigma_HCAL = cms.double( 1.0 ), + cosmicRejectionDistance = cms.double( 1.0 ), + useEGammaFilters = cms.bool( False ), + useEGammaElectrons = cms.bool( False ), + nsigma_TRACK = cms.double( 1.0 ), + useEGammaSupercluster = cms.bool( False ), + sumPtTrackIsoForEgammaSC_barrel = cms.double( 4.0 ), + eventFractionForCleaning = cms.double( 0.8 ), + usePFDecays = cms.bool( False ), + rejectTracks_Step45 = cms.bool( False ), + eventFractionForRejection = cms.double( 0.8 ), + photon_MinEt = cms.double( 10.0 ), + usePFNuclearInteractions = cms.bool( False ), + maxSignificance = cms.double( 2.5 ), + electron_iso_mva_endcap = cms.double( -0.1075 ), + debug = cms.untracked.bool( False ), + pf_convID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_pfConversionAug0411.txt" ), + calibHF_eta_step = cms.vdouble( 0.0, 2.9, 3.0, 3.2, 4.2, 4.4, 4.6, 4.8, 5.2, 5.4 ), + ptErrorScale = cms.double( 8.0 ), + minSignificance = cms.double( 2.5 ), + minMomentumForPunchThrough = cms.double( 100.0 ), + pf_conv_mvaCut = cms.double( 0.0 ), + useCalibrationsFromDB = cms.bool( True ), + usePFElectrons = cms.bool( False ), + electron_iso_combIso_endcap = cms.double( 10.0 ), + photon_combIso = cms.double( 10.0 ), + electron_iso_mva_barrel = cms.double( -0.1875 ), + postHFCleaning = cms.bool( False ), + factors_45 = cms.vdouble( 10.0, 100.0 ), + cleanedHF = cms.VInputTag( 'hltParticleFlowRecHitHCAL:Cleaned','hltParticleFlowClusterHFHAD:Cleaned','hltParticleFlowClusterHFEM:Cleaned' ), + coneEcalIsoForEgammaSC = cms.double( 0.3 ), + minSignificanceReduction = cms.double( 1.4 ), + photon_SigmaiEtaiEta_barrel = cms.double( 0.0125 ), + calibHF_b_HADonly = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + minPixelHits = cms.int32( 1 ), + maxDPtOPt = cms.double( 1.0 ), + useHO = cms.bool( False ), + pf_electron_output_col = cms.string( "electrons" ), + electron_noniso_mvaCut = cms.double( -0.1 ), + GedElectronValueMap = cms.InputTag( "gedGsfElectronsTmp" ), + useVerticesForNeutral = cms.bool( True ), + pf_Res_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFRes.root" ), + PFEGammaCandidates = cms.InputTag( "particleFlowEGamma" ), + sumPtTrackIsoSlopeForPhoton = cms.double( -1.0 ), + coneTrackIsoForEgammaSC = cms.double( 0.3 ), + minDeltaMet = cms.double( 0.4 ), + pt_Error = cms.double( 1.0 ), + useProtectionsForJetMET = cms.bool( True ), + metFactorForRejection = cms.double( 4.0 ), + sumPtTrackIsoForEgammaSC_endcap = cms.double( 4.0 ), + calibHF_use = cms.bool( False ), + verbose = cms.untracked.bool( False ), + usePFConversions = cms.bool( False ), + trackQuality = cms.string( "highPurity" ), + calibPFSCEle_endcap = cms.vdouble( 1.153, -16.5975, 5.668, -0.1772, 16.22, 7.326, 0.0483, -4.068, 9.406 ), + metFactorForCleaning = cms.double( 4.0 ), + eventFactorForCosmics = cms.double( 10.0 ), + egammaElectrons = cms.InputTag( "" ), + minEnergyForPunchThrough = cms.double( 100.0 ), + minTrackerHits = cms.int32( 8 ), + iCfgCandConnector = cms.PSet( + bCalibSecondary = cms.bool( False ), + bCalibPrimary = cms.bool( False ), + bCorrect = cms.bool( False ), + nuclCalibFactors = cms.vdouble( 0.8, 0.15, 0.5, 0.5, 0.05 ) + ), + rejectTracks_Bad = cms.bool( False ), + pf_electronID_crackCorrection = cms.bool( False ), + pf_locC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFClusterCorr.root" ), + calibHF_a_EMonly = cms.vdouble( 0.96945, 0.96701, 0.76309, 0.82268, 0.87583, 0.89718, 0.98674, 1.4681, 1.458, 1.458 ), + muons = cms.InputTag( "hltMuons" ), + metFactorForHighEta = cms.double( 25.0 ), + minHFCleaningPt = cms.double( 5.0 ), + muon_HCAL = cms.vdouble( 3.0, 3.0 ), + pf_electron_mvaCut = cms.double( -0.1 ), + ptFactorForHighEta = cms.double( 2.0 ), + maxDeltaPhiPt = cms.double( 7.0 ), + pf_electronID_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_PfElectrons23Jan_IntToFloat.txt" ), + sumEtEcalIsoForEgammaSC_endcap = cms.double( 2.0 ), + calibHF_b_EMHAD = cms.vdouble( 1.27541, 0.85361, 0.86333, 0.89091, 0.94348, 0.94348, 0.9437, 1.0034, 1.0444, 1.0444 ), + pf_GlobC_mvaWeightFile = cms.string( "RecoParticleFlow/PFProducer/data/TMVARegression_BDTG_PFGlobalCorr.root" ), + photon_HoE = cms.double( 0.1 ), + sumEtEcalIsoForEgammaSC_barrel = cms.double( 1.0 ), + calibPFSCEle_Fbrem_endcap = cms.vdouble( 0.9, 6.5, -0.0692932, 0.101776, 0.995338, -0.00236548, 0.874998, 1.653, -0.0750184, 0.147, 0.923165, 4.74665E-4, 1.10782 ), + punchThroughFactor = cms.double( 3.0 ), + algoType = cms.uint32( 0 ), + electron_iso_combIso_barrel = cms.double( 10.0 ), + postMuonCleaning = cms.bool( True ), + calibPFSCEle_barrel = cms.vdouble( 1.004, -1.536, 22.88, -1.467, 0.3555, 0.6227, 14.65, 2051.0, 25.0, 0.9932, -0.5444, 0.0, 0.5438, 0.7109, 7.645, 0.2904, 0.0 ), + electron_protectionsForJetMET = cms.PSet( + maxE = cms.double( 50.0 ), + maxTrackPOverEele = cms.double( 1.0 ), + maxEcalEOverP_2 = cms.double( 0.2 ), + maxHcalEOverEcalE = cms.double( 0.1 ), + maxEcalEOverP_1 = cms.double( 0.5 ), + maxHcalEOverP = cms.double( 1.0 ), + maxEcalEOverPRes = cms.double( 0.2 ), + maxHcalE = cms.double( 10.0 ), + maxEeleOverPout = cms.double( 0.2 ), + maxNtracks = cms.double( 3.0 ), + maxEleHcalEOverEcalE = cms.double( 0.1 ), + maxDPhiIN = cms.double( 0.1 ), + maxEeleOverPoutRes = cms.double( 0.5 ) + ), + electron_iso_pt = cms.double( 10.0 ), + isolatedElectronID_mvaWeightFile = cms.string( "RecoEgamma/ElectronIdentification/data/TMVA_BDTSimpleCat_17Feb2011.weights.xml" ), + vertexCollection = cms.InputTag( "hltPixelVertices" ), + X0_Map = cms.string( "RecoParticleFlow/PFProducer/data/allX0histos.root" ), + calibPFSCEle_Fbrem_barrel = cms.vdouble( 0.6, 6.0, -0.0255975, 0.0576727, 0.975442, -5.46394E-4, 1.26147, 25.0, -0.02025, 0.04537, 0.9728, -8.962E-4, 1.172 ), + blocks = cms.InputTag( "hltParticleFlowBlock" ), + punchThroughMETFactor = cms.double( 4.0 ), + metSignificanceForRejection = cms.double( 4.0 ), + photon_protectionsForJetMET = cms.PSet( + sumPtTrackIsoSlope = cms.double( 0.001 ), + sumPtTrackIso = cms.double( 2.0 ) + ), + usePhotonReg = cms.bool( False ), + dzPV = cms.double( 0.2 ), + calibHF_a_EMHAD = cms.vdouble( 1.42215, 1.00496, 0.68961, 0.81656, 0.98504, 0.98504, 1.00802, 1.0593, 1.4576, 1.4576 ), + useRegressionFromDB = cms.bool( False ), + muon_ECAL = cms.vdouble( 0.5, 0.5 ), + usePFSCEleCalib = cms.bool( True ) +) +process.hltAK4PFJets = cms.EDProducer( "FastjetJetProducer", + Active_Area_Repeats = cms.int32( 5 ), + doAreaFastjet = cms.bool( False ), + voronoiRfact = cms.double( -9.0 ), + maxBadHcalCells = cms.uint32( 9999999 ), + doAreaDiskApprox = cms.bool( True ), + maxRecoveredEcalCells = cms.uint32( 9999999 ), + jetType = cms.string( "PFJet" ), + minSeed = cms.uint32( 0 ), + Ghost_EtaMax = cms.double( 6.0 ), + doRhoFastjet = cms.bool( False ), + jetAlgorithm = cms.string( "AntiKt" ), + nSigmaPU = cms.double( 1.0 ), + GhostArea = cms.double( 0.01 ), + Rho_EtaMax = cms.double( 4.4 ), + maxBadEcalCells = cms.uint32( 9999999 ), + useDeterministicSeed = cms.bool( True ), + doPVCorrection = cms.bool( False ), + maxRecoveredHcalCells = cms.uint32( 9999999 ), + rParam = cms.double( 0.4 ), + maxProblematicHcalCells = cms.uint32( 9999999 ), + doOutputJets = cms.bool( True ), + src = cms.InputTag( "hltParticleFlow" ), + inputEtMin = cms.double( 0.0 ), + puPtMin = cms.double( 10.0 ), + srcPVs = cms.InputTag( "hltPixelVertices" ), + jetPtMin = cms.double( 0.0 ), + radiusPU = cms.double( 0.4 ), + maxProblematicEcalCells = cms.uint32( 9999999 ), + doPUOffsetCorr = cms.bool( False ), + inputEMin = cms.double( 0.0 ), + useMassDropTagger = cms.bool( False ), + muMin = cms.double( -1.0 ), + subtractorName = cms.string( "" ), + muCut = cms.double( -1.0 ), + subjetPtMin = cms.double( -1.0 ), + useTrimming = cms.bool( False ), + muMax = cms.double( -1.0 ), + yMin = cms.double( -1.0 ), + useFiltering = cms.bool( False ), + rFilt = cms.double( -1.0 ), + yMax = cms.double( -1.0 ), + zcut = cms.double( -1.0 ), + MinVtxNdof = cms.int32( 0 ), MaxVtxZ = cms.double( 15.0 ), UseOnlyVertexTracks = cms.bool( False ), dRMin = cms.double( -1.0 ), @@ -5332,33 +8779,34 @@ DxyTrVtxMax = cms.double( 0.0 ), useCMSBoostedTauSeedingAlgorithm = cms.bool( False ) ) -process.hltAK4CaloJetsIDPassed = cms.EDProducer( "HLTCaloJetIDProducer", - min_N90 = cms.int32( -2 ), - min_N90hits = cms.int32( 2 ), - min_EMF = cms.double( 1.0E-6 ), - jetsInput = cms.InputTag( "hltAK4CaloJets" ), - JetIDParams = cms.PSet( - useRecHits = cms.bool( True ), - hbheRecHitsColl = cms.InputTag( "hltHbhereco" ), - hoRecHitsColl = cms.InputTag( "hltHoreco" ), - hfRecHitsColl = cms.InputTag( "hltHfreco" ), - ebRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEB' ), - eeRecHitsColl = cms.InputTag( 'hltEcalRecHit','EcalRecHitsEE' ) - ), - max_EMF = cms.double( 999.0 ) -) -process.hltFixedGridRhoFastjetAllCalo = cms.EDProducer( "FixedGridRhoProducerFastjet", +process.hltFixedGridRhoFastjetAll = cms.EDProducer( "FixedGridRhoProducerFastjet", gridSpacing = cms.double( 0.55 ), maxRapidity = cms.double( 5.0 ), - pfCandidatesTag = cms.InputTag( "hltTowerMakerForAll" ) + pfCandidatesTag = cms.InputTag( "hltParticleFlow" ) ) -process.hltAK4CaloJetsCorrected = cms.EDProducer( "CaloJetCorrectionProducer", - src = cms.InputTag( "hltAK4CaloJets" ), - correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +process.hltAK4PFJetsCorrected = cms.EDProducer( "PFJetCorrectionProducer", + src = cms.InputTag( "hltAK4PFJets" ), + correctors = cms.vstring( 'hltESPAK4PFCorrection' ) ) -process.hltAK4CaloJetsCorrectedIDPassed = cms.EDProducer( "CaloJetCorrectionProducer", - src = cms.InputTag( "hltAK4CaloJetsIDPassed" ), - correctors = cms.vstring( 'hltESPAK4CaloCorrection' ) +process.hltPFJetsCorrectedMatchedToCaloJets200 = cms.EDProducer( "PFJetsMatchedToFilteredCaloJetsProducer", + DeltaR = cms.double( 0.5 ), + CaloJetFilter = cms.InputTag( "hltSingleCaloJet200" ), + TriggerType = cms.int32( 85 ), + PFJetSrc = cms.InputTag( "hltAK4PFJetsCorrected" ) +) +process.hltSinglePFJet260 = cms.EDFilter( "HLT1PFJet", + saveTags = cms.bool( True ), + MinPt = cms.double( 260.0 ), + MinN = cms.int32( 1 ), + MaxEta = cms.double( 5.0 ), + MinMass = cms.double( -1.0 ), + inputTag = cms.InputTag( "hltPFJetsCorrectedMatchedToCaloJets200" ), + MinE = cms.double( -1.0 ), + triggerType = cms.int32( 85 ) +) +process.hltPreCaloJet260 = cms.EDFilter( "HLTPrescaler", + L1GtReadoutRecordTag = cms.InputTag( "hltGtDigis" ), + offset = cms.uint32( 0 ) ) process.hltSingleCaloJet260 = cms.EDFilter( "HLT1CaloJet", saveTags = cms.bool( True ), @@ -5427,7 +8875,9 @@ dataTier = cms.untracked.string( "RAW" ) ), SelectEvents = cms.untracked.PSet( SelectEvents = cms.vstring( 'HLT_CaloJet260_v1', + 'HLT_Ele27_WP80_Gsf_v1', 'HLT_Mu40_v1', + 'HLT_PFJet260_v1', 'HLT_Photon20_CaloIdVL_IsoL_v1', 'HLT_Physics_v1' ) ), outputCommands = cms.untracked.vstring( 'drop *', @@ -5455,6 +8905,15 @@ process.HLTDoLocalHcalWithTowerSequence = cms.Sequence( process.hltHcalDigis + process.hltHbhereco + process.hltHfreco + process.hltHoreco + process.hltTowerMakerForAll ) process.HLTFastJetForEgamma = cms.Sequence( process.hltFixedGridRhoFastjetAllCaloForMuons ) process.HLTPFHcalClusteringForEgamma = cms.Sequence( process.hltRegionalTowerForEgamma + process.hltParticleFlowRecHitHCALForEgamma + process.hltParticleFlowClusterHCALForEgamma ) +process.HLTGsfElectronSequence = cms.Sequence( process.hltEgammaCkfTrackCandidatesForGSF + process.hltEgammaGsfTracks + process.hltEgammaGsfElectrons + process.hltEgammaGsfTrackVars ) +process.HLTRecoPixelVertexingForElectronSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracksElectrons + process.hltPixelVerticesElectrons ) +process.HLTPixelTrackingForElectron = cms.Sequence( process.hltElectronsVertex + process.HLTDoLocalPixelSequence + process.HLTRecoPixelVertexingForElectronSequence ) +process.HLTIterativeTrackingForElectronsIteration0 = cms.Sequence( process.hltIter0ElectronsPixelSeedsFromPixelTracks + process.hltIter0ElectronsCkfTrackCandidates + process.hltIter0ElectronsCtfWithMaterialTracks + process.hltIter0ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronsIteration1 = cms.Sequence( process.hltIter1ElectronsClustersRefRemoval + process.hltIter1ElectronsMaskedMeasurementTrackerEvent + process.hltIter1ElectronsPixelLayerTriplets + process.hltIter1ElectronsPixelSeeds + process.hltIter1ElectronsCkfTrackCandidates + process.hltIter1ElectronsCtfWithMaterialTracks + process.hltIter1ElectronsTrackSelectionHighPurityLoose + process.hltIter1ElectronsTrackSelectionHighPurityTight + process.hltIter1ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronsIteration2 = cms.Sequence( process.hltIter2ElectronsClustersRefRemoval + process.hltIter2ElectronsMaskedMeasurementTrackerEvent + process.hltIter2ElectronsPixelLayerPairs + process.hltIter2ElectronsPixelSeeds + process.hltIter2ElectronsCkfTrackCandidates + process.hltIter2ElectronsCtfWithMaterialTracks + process.hltIter2ElectronsTrackSelectionHighPurity ) +process.HLTIterativeTrackingForElectronIter02 = cms.Sequence( process.HLTIterativeTrackingForElectronsIteration0 + process.HLTIterativeTrackingForElectronsIteration1 + process.hltIter1MergedForElectrons + process.HLTIterativeTrackingForElectronsIteration2 + process.hltIter2MergedForElectrons ) +process.HLTTrackReconstructionForIsoElectronIter02 = cms.Sequence( process.HLTPixelTrackingForElectron + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingForElectronIter02 ) +process.HLTEle27WP80GsfSequence = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalSequence + process.HLTPFClusteringForEgamma + process.hltEgammaCandidates + process.hltEGL1SingleEG20ORL1SingleEG22Filter + process.hltEG27EtFilter + process.hltEgammaClusterShape + process.hltEle27WP80ClusterShapeFilter + process.HLTDoLocalHcalWithTowerSequence + process.HLTFastJetForEgamma + process.hltEgammaHoverE + process.hltEle27WP80HEFilter + process.hltEgammaEcalPFClusterIso + process.hltEle27WP80EcalIsoFilter + process.HLTPFHcalClusteringForEgamma + process.hltEgammaHcalPFClusterIso + process.hltEle27WP80HcalIsoFilter + process.HLTDoLocalPixelSequence + process.HLTDoLocalStripSequence + process.hltMixedLayerPairs + process.hltEgammaElectronPixelSeeds + process.hltEle27WP80PixelMatchFilter + process.HLTGsfElectronSequence + process.hltEle27WP80GsfOneOEMinusOneOPFilter + process.hltEle27WP80GsfDetaFilter + process.hltEle27WP80GsfDphiFilter + process.HLTTrackReconstructionForIsoElectronIter02 + process.hltEgammaEleGsfTrackIso + process.hltEle27WP80GsfTrackIsoFilter ) process.HLTRecoPixelVertexingForPhotonsSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracks + process.hltPixelVerticesForPhotons ) process.HLTIterativeTrackingForPhotonsIteration0 = cms.Sequence( process.hltIter0PFlowPixelSeedsFromPixelTracksForPhotons + process.hltIter0PFlowCkfTrackCandidatesForPhotons + process.hltIter0PFlowCtfWithMaterialTracksForPhotons + process.hltIter0PFlowTrackSelectionHighPurityForPhotons ) process.HLTIterativeTrackingForPhotonsIteration1 = cms.Sequence( process.hltIter1ClustersRefRemovalForPhotons + process.hltIter1MaskedMeasurementTrackerEventForPhotons + process.hltIter1PixelLayerTripletsForPhotons + process.hltIter1PFlowPixelSeedsForPhotons + process.hltIter1PFlowCkfTrackCandidatesForPhotons + process.hltIter1PFlowCtfWithMaterialTracksForPhotons + process.hltIter1PFlowTrackSelectionHighPurityLooseForPhotons + process.hltIter1PFlowTrackSelectionHighPurityTightForPhotons + process.hltIter1PFlowTrackSelectionHighPurityForPhotons ) @@ -5468,10 +8927,32 @@ process.HLTAK4CaloJetsReconstructionSequence = cms.Sequence( process.HLTDoCaloSequence + process.hltAK4CaloJets + process.hltAK4CaloJetsIDPassed ) process.HLTAK4CaloJetsCorrectionSequence = cms.Sequence( process.hltFixedGridRhoFastjetAllCalo + process.hltAK4CaloJetsCorrected + process.hltAK4CaloJetsCorrectedIDPassed ) process.HLTAK4CaloJetsSequence = cms.Sequence( process.HLTAK4CaloJetsReconstructionSequence + process.HLTAK4CaloJetsCorrectionSequence ) +process.HLTDoCaloSequencePF = cms.Sequence( process.HLTDoFullUnpackingEgammaEcalWithoutPreshowerSequence + process.HLTDoLocalHcalSequence + process.hltTowerMakerForPF ) +process.HLTAK4CaloJetsPrePFRecoSequence = cms.Sequence( process.HLTDoCaloSequencePF + process.hltAK4CaloJetsPF ) +process.HLTPreAK4PFJetsRecoSequence = cms.Sequence( process.HLTAK4CaloJetsPrePFRecoSequence + process.hltAK4CaloJetsPFEt5 ) +process.HLTRecopixelvertexingSequence = cms.Sequence( process.hltPixelLayerTriplets + process.hltPixelTracks + process.hltPixelVertices ) +process.HLTIterativeTrackingIteration0 = cms.Sequence( process.hltIter0PFLowPixelSeedsFromPixelTracks + process.hltIter0PFlowCkfTrackCandidates + process.hltIter0PFlowCtfWithMaterialTracks + process.hltIter0PFlowTrackSelectionHighPurity ) +process.HLTIter0TrackAndTauJet4Iter1Sequence = cms.Sequence( process.hltTrackIter0RefsForJets4Iter1 + process.hltAK4Iter0TrackJets4Iter1 + process.hltIter0TrackAndTauJets4Iter1 ) +process.HLTIterativeTrackingIteration1 = cms.Sequence( process.hltIter1ClustersRefRemoval + process.hltIter1MaskedMeasurementTrackerEvent + process.hltIter1PixelLayerTriplets + process.hltIter1PFlowPixelSeeds + process.hltIter1PFlowCkfTrackCandidates + process.hltIter1PFlowCtfWithMaterialTracks + process.hltIter1PFlowTrackSelectionHighPurityLoose + process.hltIter1PFlowTrackSelectionHighPurityTight + process.hltIter1PFlowTrackSelectionHighPurity ) +process.HLTIter1TrackAndTauJets4Iter2Sequence = cms.Sequence( process.hltIter1TrackRefsForJets4Iter2 + process.hltAK4Iter1TrackJets4Iter2 + process.hltIter1TrackAndTauJets4Iter2 ) +process.HLTIterativeTrackingIteration2 = cms.Sequence( process.hltIter2ClustersRefRemoval + process.hltIter2MaskedMeasurementTrackerEvent + process.hltIter2PixelLayerPairs + process.hltIter2PFlowPixelSeeds + process.hltIter2PFlowCkfTrackCandidates + process.hltIter2PFlowCtfWithMaterialTracks + process.hltIter2PFlowTrackSelectionHighPurity ) +process.HLTIter2TrackAndTauJets4Iter3Sequence = cms.Sequence( process.hltIter2TrackRefsForJets4Iter3 + process.hltAK4Iter2TrackJets4Iter3 + process.hltIter2TrackAndTauJets4Iter3 ) +process.HLTIterativeTrackingIteration3 = cms.Sequence( process.hltIter3ClustersRefRemoval + process.hltIter3MaskedMeasurementTrackerEvent + process.hltIter3LayerTriplets + process.hltIter3PFlowMixedSeeds + process.hltIter3PFlowCkfTrackCandidates + process.hltIter3PFlowCtfWithMaterialTracks + process.hltIter3PFlowTrackSelectionHighPurityLoose + process.hltIter3PFlowTrackSelectionHighPurityTight + process.hltIter3PFlowTrackSelectionHighPurity ) +process.HLTIter3TrackAndTauJets4Iter4Sequence = cms.Sequence( process.hltIter3TrackRefsForJets4Iter4 + process.hltAK4Iter3TrackJets4Iter4 + process.hltIter3TrackAndTauJets4Iter4 ) +process.HLTIterativeTrackingIteration4 = cms.Sequence( process.hltIter4ClustersRefRemoval + process.hltIter4MaskedMeasurementTrackerEvent + process.hltIter4PixelLessLayerTriplets + process.hltIter4PFlowPixelLessSeeds + process.hltIter4PFlowCkfTrackCandidates + process.hltIter4PFlowCtfWithMaterialTracks + process.hltIter4PFlowTrackSelectionHighPurity ) +process.HLTIterativeTrackingIter04 = cms.Sequence( process.HLTIterativeTrackingIteration0 + process.HLTIter0TrackAndTauJet4Iter1Sequence + process.HLTIterativeTrackingIteration1 + process.hltIter1Merged + process.HLTIter1TrackAndTauJets4Iter2Sequence + process.HLTIterativeTrackingIteration2 + process.hltIter2Merged + process.HLTIter2TrackAndTauJets4Iter3Sequence + process.HLTIterativeTrackingIteration3 + process.hltIter3Merged + process.HLTIter3TrackAndTauJets4Iter4Sequence + process.HLTIterativeTrackingIteration4 + process.hltIter4Merged ) +process.HLTTrackReconstructionForPF = cms.Sequence( process.HLTDoLocalPixelSequence + process.HLTRecopixelvertexingSequence + process.HLTDoLocalStripSequence + process.HLTIterativeTrackingIter04 + process.hltPFMuonMerging + process.hltMuonLinks + process.hltMuons ) +process.HLTPreshowerSequence = cms.Sequence( process.hltEcalPreshowerDigis + process.hltEcalPreshowerRecHit ) +process.HLTParticleFlowSequence = cms.Sequence( process.HLTPreshowerSequence + process.hltParticleFlowRecHitECALUnseeded + process.hltParticleFlowRecHitHCAL + process.hltParticleFlowRecHitPSUnseeded + process.hltParticleFlowClusterECALUncorrectedUnseeded + process.hltParticleFlowClusterPSUnseeded + process.hltParticleFlowClusterECALUnseeded + process.hltParticleFlowClusterHCAL + process.hltParticleFlowClusterHFEM + process.hltParticleFlowClusterHFHAD + process.hltLightPFTracks + process.hltParticleFlowBlock + process.hltParticleFlow ) +process.HLTAK4PFJetsReconstructionSequence = cms.Sequence( process.HLTL2muonrecoSequence + process.HLTL3muonrecoSequence + process.HLTTrackReconstructionForPF + process.HLTParticleFlowSequence + process.hltAK4PFJets ) +process.HLTAK4PFJetsCorrectionSequence = cms.Sequence( process.hltFixedGridRhoFastjetAll + process.hltAK4PFJetsCorrected ) +process.HLTAK4PFJetsSequence = cms.Sequence( process.HLTPreAK4PFJetsRecoSequence + process.HLTAK4PFJetsReconstructionSequence + process.HLTAK4PFJetsCorrectionSequence ) process.HLTriggerFirstPath = cms.Path( process.hltGetConditions + process.hltGetRaw + process.hltBoolFalse ) process.HLT_Mu40_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sMu16 + process.hltPreMu40 + process.hltL1fL1sMu16L1Filtered0 + process.HLTL2muonrecoSequence + process.hltL2fL1sMu16L1f0L2Filtered16Q + process.HLTL3muonrecoSequence + process.hltL3fL1sMu16L1f0L2f16QL3Filtered40Q + process.HLTEndSequence ) +process.HLT_Ele27_WP80_Gsf_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG20ORL1SingleEG22 + process.hltPreEle27WP80Gsf + process.HLTEle27WP80GsfSequence + process.HLTEndSequence ) process.HLT_Photon20_CaloIdVL_IsoL_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleEG12 + process.hltPrePhoton20CaloIdVLIsoL + process.HLTPhoton20CaloIdVLIsoLSequence + process.HLTEndSequence ) +process.HLT_PFJet260_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleJet128 + process.hltPrePFJet260 + process.HLTAK4CaloJetsSequence + process.hltSingleCaloJet200 + process.HLTAK4PFJetsSequence + process.hltPFJetsCorrectedMatchedToCaloJets200 + process.hltSinglePFJet260 + process.HLTEndSequence ) process.HLT_CaloJet260_v1 = cms.Path( process.HLTBeginSequence + process.hltL1sL1SingleJet128 + process.hltPreCaloJet260 + process.HLTAK4CaloJetsSequence + process.hltSingleCaloJet260 + process.HLTEndSequence ) process.HLT_Physics_v1 = cms.Path( process.HLTBeginSequence + process.hltPrePhysics + process.HLTEndSequence ) process.HLTriggerFinalPath = cms.Path( process.hltGtDigis + process.hltScalersRawToDigi + process.hltFEDSelector + process.hltTriggerSummaryAOD + process.hltTriggerSummaryRAW ) @@ -5549,7 +9030,7 @@ # override the GlobalTag, connection string and pfnPrefix if 'GlobalTag' in process.__dict__: from Configuration.AlCa.GlobalTag_condDBv2 import GlobalTag as customiseGlobalTag - process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:startup_PIon', conditions = 'L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2013_v0_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') + process.GlobalTag = customiseGlobalTag(process.GlobalTag, globaltag = 'auto:startup_PIon', conditions = 'L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc,L1GtTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS') process.GlobalTag.connect = 'frontier://FrontierProd/CMS_CONDITIONS' process.GlobalTag.pfnPrefix = cms.untracked.string('frontier://FrontierProd/') for pset in process.GlobalTag.toGet.value(): diff --git a/HLTrigger/Configuration/test/getHLT.sh b/HLTrigger/Configuration/test/getHLT.sh index 83dbd5097a1b5..b11e292209909 100755 --- a/HLTrigger/Configuration/test/getHLT.sh +++ b/HLTrigger/Configuration/test/getHLT.sh @@ -69,13 +69,15 @@ function getConfigForOnline() { local CONFIG="$1" local NAME="$2" # local L1T="tag[,connect]" - record is hardwired as L1GtTriggerMenuRcd + # local L1TPP="L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc,sqlite_file:/afs/cern.ch/user/g/ghete/public/L1Menu/L1Menu_Collisions2012_v3/sqlFile/L1Menu_Collisions2012_v3_mc.db" local L1TPP="L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc" # local L1THI="L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2011_v0_mc,sqlite_file:/afs/cern.ch/user/g/ghete/public/L1Menu/L1Menu_CollisionsHeavyIons2011_v0/sqlFile/L1Menu_CollisionsHeavyIons2011_v0_mc.db" - local L1THI="L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2011_v0_mc" +# local L1THI="L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2011_v0_mc" + local L1THI="L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc" # local L1TPI="L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2013_v0_mc,sqlite_file:/afs/cern.ch/user/g/ghete/public/L1Menu/L1Menu_CollisionsHeavyIons2013_v0/sqlFile/L1Menu_CollisionsHeavyIons2013_v0_mc.db" - local L1TPI="L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2013_v0_mc" - +# local L1TPI="L1GtTriggerMenu_L1Menu_CollisionsHeavyIons2013_v0_mc" + local L1TPI="L1GtTriggerMenu_L1Menu_Collisions2012_v3_mc" log " dumping full HLT for $NAME from $CONFIG" # override L1 menus @@ -89,7 +91,7 @@ function getConfigForOnline() { hltGetConfiguration --full --offline --data $CONFIG --type $NAME --unprescale --process HLT$NAME --l1 $L1TPI --globaltag auto:hltonline_PIon > OnData_HLT_$NAME.py hltGetConfiguration --full --offline --mc $CONFIG --type $NAME --unprescale --process HLT$NAME --l1 $L1TPI --globaltag auto:startup_PIon > OnLine_HLT_$NAME.py else - hltGetConfiguration --full --offline --data $CONFIG --type $NAME --unprescale --process HLT$NAME --l1 $L1TPP --globaltag auto:hltonline > OnData_HLT_$NAME.py + hltGetConfiguration --full --offline --data $CONFIG --type $NAME --unprescale --process HLT$NAME --l1 $L1TPP --globaltag auto:hltonline_GRun > OnData_HLT_$NAME.py hltGetConfiguration --full --offline --mc $CONFIG --type $NAME --unprescale --process HLT$NAME --l1 $L1TPP --globaltag auto:startup_GRun > OnLine_HLT_$NAME.py fi diff --git a/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py b/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py index e94ada7e9ee3d..7e0c688c95056 100644 --- a/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py +++ b/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py @@ -93,6 +93,11 @@ "HLT_Mu17_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v", "HLT_Mu8_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v", "HLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL_v", + "HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_v", + "HLT_Mu17_TrkIsoVVL_kMu8_TrkIsoVVL_v", + "HLT_Mu23_TrkIsoVVL_Ele12_Gsf_CaloId_TrackId_Iso_MediumWP_v", + "HLT_Mu8_TrkIsoVVL_Ele23_Gsf_CaloId_TrackId_Iso_MediumWP_v", + "HLT_Ele23_Ele12_CaloId_TrackId_Iso_v" ), recMuonLabel = cms.string("muons"), recElecLabel = cms.string("gedGsfElectrons"), @@ -115,6 +120,8 @@ "HLT_Photon26_R9Id85_OR_CaloId10_Iso50_Photon18_R9Id85_OR_CaloId10_Iso50_Mass70_v", "HLT_Photon36_R9Id85_OR_CaloId10_Iso50_Photon22_R9Id85_OR_CaloId10_Iso50_v", "HLT_Photon36_R9Id85_OR_CaloId10_Iso50_Photon10_R9Id85_OR_CaloId10_Iso50_Mass80_v", + "HLT_Photon36_R9Id85_OR_CaloId24b40e_Iso50T80L_Photon18_AND_HE10_R9Id65_Mass95_v", + "HLT_Photon42_R9Id85_OR_CaloId24b40e_Iso50T80L_Photon22_AND_HE10_R9Id65_v" ), recPhotonLabel = cms.string("photons"), # -- Analysis specific cuts diff --git a/HeavyIonsAnalysis/Configuration/test/SDmaker_3SD_3CS_PDMinBias_cfg.py b/HeavyIonsAnalysis/Configuration/test/SDmaker_3SD_3CS_PDMinBias_cfg.py index eabb9cb938f8e..89a2984b690df 100644 --- a/HeavyIonsAnalysis/Configuration/test/SDmaker_3SD_3CS_PDMinBias_cfg.py +++ b/HeavyIonsAnalysis/Configuration/test/SDmaker_3SD_3CS_PDMinBias_cfg.py @@ -132,7 +132,7 @@ process.outputCsJetHI.outputCommands.extend([ "keep recoVertexs_hiSelectedVertex__RECO", - "keep recoTracks_hiSelectedTracks__RECO", + "keep recoTracks_hiGeneralTracks__RECO", "keep recoPhotons_*_*_*" , "keep edmTriggerResults_TriggerResults__*" , "keep triggerTriggerEvent_hltTriggerSummaryAOD__*" diff --git a/PhysicsTools/PatAlgos/python/tools/cmsswVersionTools.py b/PhysicsTools/PatAlgos/python/tools/cmsswVersionTools.py index 9a6bd3fc30ef8..86c9fd041fdc9 100644 --- a/PhysicsTools/PatAlgos/python/tools/cmsswVersionTools.py +++ b/PhysicsTools/PatAlgos/python/tools/cmsswVersionTools.py @@ -64,7 +64,10 @@ def __init__( self ): self.addParameter( self._defaultParameters, 'relVal' , 'RelValTTbar' , '' ) self.addParameter( self._defaultParameters, 'dataTier' , 'GEN-SIM-RECO' , '' ) self.addParameter( self._defaultParameters, 'condition' , 'startup' , '' ) - self.addParameter( self._defaultParameters, 'globalTag' , autoCond[ self.getDefaultParameters()[ 'condition' ].value ][ : -5 ], 'auto from \'condition\'' ) + gt = autoCond[ self.getDefaultParameters()[ 'condition' ].value ] + if isinstance(gt,tuple) or isinstance(gt,list): + gt = gt[0] + self.addParameter( self._defaultParameters, 'globalTag' , gt[ : -5 ] , 'auto from \'condition\'' ) self.addParameter( self._defaultParameters, 'maxVersions' , 3 , '' ) self.addParameter( self._defaultParameters, 'skipFiles' , 0 , '' ) self.addParameter( self._defaultParameters, 'numberOfFiles', -1 , 'all' ) diff --git a/RecoEgamma/ElectronIdentification/src/ElectronMVAEstimator.cc b/RecoEgamma/ElectronIdentification/src/ElectronMVAEstimator.cc index b293fe4f581d1..3ffa44fe66a27 100644 --- a/RecoEgamma/ElectronIdentification/src/ElectronMVAEstimator.cc +++ b/RecoEgamma/ElectronIdentification/src/ElectronMVAEstimator.cc @@ -5,9 +5,13 @@ #include "DataFormats/GsfTrackReco/interface/GsfTrackFwd.h" #include "FWCore/ParameterSet/interface/FileInPath.h" -ElectronMVAEstimator::ElectronMVAEstimator(){} +ElectronMVAEstimator::ElectronMVAEstimator(): + cfg_{} +{} -ElectronMVAEstimator::ElectronMVAEstimator(std::string fileName){ +ElectronMVAEstimator::ElectronMVAEstimator(std::string fileName): + cfg_{} +{ tmvaReader_ = new TMVA::Reader("!Color:Silent"); tmvaReader_->AddVariable("fbrem",&fbrem); tmvaReader_->AddVariable("detain", &detain); diff --git a/RecoHI/Configuration/python/Reconstruction_HI_cff.py b/RecoHI/Configuration/python/Reconstruction_HI_cff.py index 0a4d246dbd810..a9fa0c9393414 100644 --- a/RecoHI/Configuration/python/Reconstruction_HI_cff.py +++ b/RecoHI/Configuration/python/Reconstruction_HI_cff.py @@ -4,20 +4,21 @@ # HIGH LEVEL RECO # Tracking -#from RecoHI.HiTracking.HighPtTracking_PbPb_cff import * # above 1.5 GeV -from RecoHI.HiTracking.LowPtTracking_PbPb_cff import * # above 0.9 GeV +from RecoHI.HiTracking.HiTracking_cff import * # two additional steps # Egamma from RecoHI.HiEgammaAlgos.HiEgamma_cff import * +from RecoHI.HiEgammaAlgos.HiElectronSequence_cff import * # Jet Reconstruction from RecoHI.HiJetAlgos.HiRecoJets_cff import * # Muon Reco from RecoHI.HiMuonAlgos.HiRecoMuon_cff import * +# keep regit seperate for the moment +from RecoHI.HiMuonAlgos.HiRegionalRecoMuon_cff import * -# Regit Muon Reco -from RecoHI.HiMuonAlgos.HiReRecoMuon_cff import * +from RecoHI.Configuration.Reconstruction_hiPF_cff import * # Heavy Ion Event Characterization from RecoHI.HiCentralityAlgos.HiCentrality_cfi import * @@ -25,19 +26,34 @@ # HCAL noise producer from RecoMET.METProducers.hcalnoiseinfoproducer_cfi import * -hcalnoise.trackCollName = 'hiSelectedTracks' +hcalnoise.trackCollName = 'hiGeneralTracks' # Global + High-Level Reco Sequence -globalRecoPbPb = cms.Sequence(heavyIonTracking +globalRecoPbPb = cms.Sequence(hiTracking + * hiParticleFlowLocalReco * hiEcalClusters * hiRecoJets * muonRecoPbPb + * hiElectronSequence * hiEgammaSequence + * hiParticleFlowReco * hiCentrality * hiEvtPlane * hcalnoise ) +globalRecoPbPb_wConformalPixel = cms.Sequence(hiTracking_wConformalPixel + * hiParticleFlowLocalReco + * hiEcalClusters + * hiRecoJets + * muonRecoPbPb + * hiElectronSequence + * hiEgammaSequence + * hiParticleFlowReco + * hiCentrality + * hiEvtPlane + * hcalnoise + ) #-------------------------------------------------------------------------- # Full sequence (LOCAL RECO + HIGH LEVEL RECO) diff --git a/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py b/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py index 19492a3731666..c01576bbae5c7 100644 --- a/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py +++ b/RecoHI/Configuration/python/Reconstruction_hiPF_cff.py @@ -2,17 +2,28 @@ # include particle flow local reconstruction from RecoParticleFlow.PFClusterProducer.particleFlowCluster_cff import * -particleFlowClusterPS.thresh_Pt_Seed_Endcap = cms.double(99999.) - -from RecoParticleFlow.PFTracking.pfTrack_cfi import * -pfTrack.UseQuality = cms.bool(True) -pfTrack.TrackQuality = cms.string('highPurity') -pfTrack.TkColList = cms.VInputTag("hiSelectedTracks") -pfTrack.PrimaryVertexLabel = cms.InputTag("hiSelectedVertex") -pfTrack.MuColl = cms.InputTag("muons") # run a trimmed down PF sequence with heavy-ion vertex, no conversions, nucl int, etc. + +from RecoParticleFlow.PFProducer.particleFlowEGamma_cff import * +particleFlowEGamma.vertexCollection = cms.InputTag("hiSelectedVertex") +gedGsfElectronCores.ctfTracks = cms.InputTag("hiGeneralTracks") +gedGsfElectronsTmp.ctfTracksTag = cms.InputTag("hiGeneralTracks") +gedGsfElectronsTmp.vtxTag = cms.InputTag("hiSelectedVertex") +gedPhotonsTmp.primaryVertexProducer = cms.InputTag("hiSelectedVertex") +gedPhotonsTmp.regressionConfig.vertexCollection = cms.InputTag("hiSelectedVertex") +gedPhotonsTmp.isolationSumsCalculatorSet.trackProducer = cms.InputTag("hiGeneralTracks") + + +#These are set for consistency w/ HiElectronSequence, but these cuts need to be studied +gedGsfElectronsTmp.maxHOverEBarrel = cms.double(0.25) +gedGsfElectronsTmp.maxHOverEEndcaps = cms.double(0.25) + + from RecoParticleFlow.Configuration.RecoParticleFlow_cff import * + +mvaElectrons.vertexTag = cms.InputTag("hiSelectedVertex") + particleFlowBlock.elementImporters = cms.VPSet( cms.PSet( importerName = cms.string("GSFTrackImporter"), source = cms.InputTag("pfTrackElec"), @@ -58,20 +69,17 @@ particleFlowTmp.muons = cms.InputTag("muons") particleFlowTmp.usePFConversions = cms.bool(False) -from RecoParticleFlow.PFTracking.pfTrackElec_cfi import * -pfTrackElec.applyGsfTrackCleaning = cms.bool(True) -pfTrackElec.PrimaryVertexLabel = cms.InputTag("hiSelectedVertex") -mvaElectrons.vertexTag = cms.InputTag("hiSelectedVertex") +from RecoHI.HiJetAlgos.HiRecoPFJets_cff import * # local reco must run before electrons (RecoHI/HiEgammaAlgos), due to PF integration -HiParticleFlowLocalReco = cms.Sequence(particleFlowCluster - * pfTrack - * pfTrackElec - ) +hiParticleFlowLocalReco = cms.Sequence(particleFlowCluster) + #PF Reco runs after electrons -HiParticleFlowReco = cms.Sequence(pfGsfElectronMVASelectionSequence - * particleFlowBlock - * particleFlowTmp - ) +hiParticleFlowReco = cms.Sequence( pfGsfElectronMVASelectionSequence + * particleFlowBlock + * particleFlowEGammaFull + * particleFlowTmp + * hiRecoPFJets + ) diff --git a/RecoHI/Configuration/python/customise_PF.py b/RecoHI/Configuration/python/customise_PF.py index 03c0dca6d1676..f8dc68c0d61b3 100644 --- a/RecoHI/Configuration/python/customise_PF.py +++ b/RecoHI/Configuration/python/customise_PF.py @@ -11,7 +11,7 @@ def customise(process): process.load("RecoParticleFlow.PFTracking.pfTrack_cfi") process.pfTrack.UseQuality = cms.bool(True) process.pfTrack.TrackQuality = cms.string('highPurity') - process.pfTrack.TkColList = cms.VInputTag("hiSelectedTracks") + process.pfTrack.TkColList = cms.VInputTag("hiGeneralTracks") process.pfTrack.PrimaryVertexLabel = cms.InputTag("hiSelectedVertex") process.pfTrack.MuColl = cms.InputTag("muons") process.pfTrack.GsfTracksInEvents = cms.bool(False) diff --git a/RecoHI/Configuration/test/test_PF_rereco_cfg.py b/RecoHI/Configuration/test/test_PF_rereco_cfg.py index bcbb4951053f6..be4f9b4139b41 100644 --- a/RecoHI/Configuration/test/test_PF_rereco_cfg.py +++ b/RecoHI/Configuration/test/test_PF_rereco_cfg.py @@ -43,7 +43,7 @@ # Path and EndPath definitions process.trkreco_step = cms.Path(process.rechits * process.heavyIonTracking) -process.pfreco_step = cms.Path(process.HiParticleFlowReco) +process.pfreco_step = cms.Path(process.hiParticleFlowReco) process.out_step = cms.EndPath(process.output) # Schedule definition diff --git a/RecoHI/HiCentralityAlgos/BuildFile.xml b/RecoHI/HiCentralityAlgos/BuildFile.xml index c8f158d6ee4e6..7ad78a3cb1438 100644 --- a/RecoHI/HiCentralityAlgos/BuildFile.xml +++ b/RecoHI/HiCentralityAlgos/BuildFile.xml @@ -12,6 +12,7 @@ + @@ -19,5 +20,9 @@ - + + + + + diff --git a/DataFormats/HeavyIonEvent/interface/CentralityProvider.h b/RecoHI/HiCentralityAlgos/interface/CentralityProvider.h similarity index 81% rename from DataFormats/HeavyIonEvent/interface/CentralityProvider.h rename to RecoHI/HiCentralityAlgos/interface/CentralityProvider.h index c926444f6bff2..27094fdab2d00 100644 --- a/DataFormats/HeavyIonEvent/interface/CentralityProvider.h +++ b/RecoHI/HiCentralityAlgos/interface/CentralityProvider.h @@ -8,14 +8,16 @@ #include "CondFormats/HIObjects/interface/CentralityTable.h" #include "CondFormats/DataRecord/interface/HeavyIonRcd.h" #include "FWCore/Framework/interface/ESHandle.h" +#include "FWCore/Framework/interface/ConsumesCollector.h" class CentralityProvider : public CentralityBins { public: CentralityProvider(const edm::EventSetup& iSetup); + CentralityProvider(const edm::EventSetup& iSetup, edm::ConsumesCollector && iC); ~CentralityProvider(){;} - enum VariableType {HFtowers,HFhits,PixelHits,PixelTracks,Tracks,EB,EE,Missing}; + enum VariableType {HFtowers, HFtowersPlus, HFtowersMinus, HFtowersTrunc, HFtowersPlusTrunc, HFtowersMinusTrunc, HFhits, PixelHits, PixelTracks, Tracks, EB, EE, Missing}; int getNbins() const {return table_.size();} double centralityValue() const; @@ -36,13 +38,14 @@ class CentralityProvider : public CentralityBins { const reco::Centrality* raw() const {return chandle_.product();} private: - edm::InputTag tag_; + edm::EDGetTokenT tag_; std::string centralityVariable_; std::string centralityLabel_; std::string centralityMC_; unsigned int prevRun_; mutable edm::Handle chandle_; VariableType varType_; + unsigned int pPbRunFlip_; }; #endif diff --git a/RecoHI/HiCentralityAlgos/macros/plotBinsAgainstMXS.C b/RecoHI/HiCentralityAlgos/macros/plotBinsAgainstMXS.C deleted file mode 100644 index be5698fcaa5c7..0000000000000 --- a/RecoHI/HiCentralityAlgos/macros/plotBinsAgainstMXS.C +++ /dev/null @@ -1,80 +0,0 @@ - - -static const int maxtables = 25; - -void plotBinsAgainstMXS(){ - - int nTables = 16; - int nBins = 18; - - CentralityBins* tables[maxtables]; - TGraph * graphs[40]; - - TFile* inf = new TFile("tables.root","read"); - TFile* outf = new TFile("ErrorMap.root","recreate"); - - for(int i = 0 ; i < nTables; ++i){ - tables[i] = (CentralityBins*)inf->Get(Form("HFhits20_MXS%d_Hydjet4TeV_MC_3XY_V21_v0",i)); - } - - for(int j = 0; j< nBins; ++j){ - graphs[j] = new TGraph(nTables); - graphs[j]->SetName(Form("Bin%d",j)); - graphs[j]->SetMarkerColor(nBins-j); - graphs[j]->SetMarkerSize(1.); - graphs[j]->SetMarkerStyle(20); - - for(int i = 0 ; i < nTables; ++i){ - double reference = tables[0]->NpartMeanOfBin(j); - if(reference <= 0) reference = 0.001; - graphs[j]->SetPoint(i,((double)i)/100,tables[i]->NpartMeanOfBin(j)/reference); - } - } - - graphs[0]->SetMarkerColor(49); - - TGraph* g1 = new TGraph(nBins); - g1->SetName("g1"); - g1->SetMarkerSize(1.); - g1->SetMarkerStyle(20); - - TH2D* hPad1 = new TH2D("hPad1",";Fraction of Missing XS;[N_{part}]/[N_{part}(100%)]",100,-0.02,0.2,450,0,7); - TH2D* hPad2 = new TH2D("hPad2",";bin;#Delta N_{part}/N_{part} per unit efficiency",nBins+1,-0.5,nBins+0.5,450,0,35); - - TCanvas* c1 = new TCanvas("c1","c1",400,400); - TLegend* leg3 = new TLegend(0.2,0.65,0.55,0.92,NULL,"brNDC"); - leg3->SetFillColor(0); - leg3->SetTextSize(0.06); - leg3->SetBorderSize(0); - - hPad1->Draw(); - for(int j = 0; j< nBins; ++j){ - - graphs[j]->Fit("pol1"); - if(j > 3) graphs[j]->Draw("p"); - TF1* f = graphs[j]->GetFunction("pol1"); - f->SetLineColor(graphs[j]->GetMarkerColor()); - if(j % 5 == 0) leg3->AddEntry(graphs[j],Form("Bin %d",j),"pl"); - - double slope = f->GetParameter(1); - g1->SetPoint(j,j,slope); - } - - leg3->Draw(); - c1->Print("NpartMean_vs_MXS.gif"); - - TCanvas* c2 = new TCanvas("c2","c2",400,400); - hPad2->Draw(); - g1->Draw("p"); - - c2->Print("delta_vs_bins.gif"); - - - hPad2->Write(); - g1->Write(); - outf->Write(); - - -} - - diff --git a/RecoHI/HiCentralityAlgos/macros/rootlogon.C b/RecoHI/HiCentralityAlgos/macros/rootlogon.C deleted file mode 100644 index 7476e12c21dbe..0000000000000 --- a/RecoHI/HiCentralityAlgos/macros/rootlogon.C +++ /dev/null @@ -1,12 +0,0 @@ -{ - gSystem->Load( "libFWCoreFWLite" ); - gSystem->Load("libDataFormatsFWLite"); - gSystem->Load("libDataFormatsCommon"); - gSystem->Load("libDataFormatsCaloTowers"); - gSystem->Load("libDataFormatsHeavyIonEvent"); - gSystem->Load("libSimDataFormatsHiGenData"); - gSystem->AddIncludePath("-I$CMSSW_BASE/src/"); - gSystem->AddIncludePath("-I$CMSSW_RELEASE_BASE/src/"); - AutoLibraryLoader::enable(); - -} diff --git a/RecoHI/HiCentralityAlgos/macros/rootlogonBareRoot.C b/RecoHI/HiCentralityAlgos/macros/rootlogonBareRoot.C deleted file mode 100644 index 08178daea6bed..0000000000000 --- a/RecoHI/HiCentralityAlgos/macros/rootlogonBareRoot.C +++ /dev/null @@ -1,6 +0,0 @@ -{ - gSystem->Load("libDataFormatsHeavyIonEvent"); - gSystem->AddIncludePath("-I$CMSSW_BASE/src/"); - gSystem->AddIncludePath("-I$CMSSW_RELEASE_BASE/src/"); - -} diff --git a/RecoHI/HiCentralityAlgos/macros/testCentralityBareRoot.C b/RecoHI/HiCentralityAlgos/macros/testCentralityBareRoot.C deleted file mode 100644 index 4200048d23c5e..0000000000000 --- a/RecoHI/HiCentralityAlgos/macros/testCentralityBareRoot.C +++ /dev/null @@ -1,19 +0,0 @@ -#include "DataFormats/HeavyIonEvent/interface/CentralityBins.h" -#include "TFile.h" -#include -using namespace std; - -void testCentralityBareRoot(){ - - TFile* inf = new TFile("centralityfile.root"); - - CentralityBins::RunMap cmap = getCentralityFromFile(inf, "makeCentralityTableTFile", "HFhitsAMPT_2760GeV", 0, 2); - // or, alternatively: - // TDirectoryFile* dir = (TDirectoryFile*) inf->Get("makeCentralityTableTFile"); - // CentralityBins::RunMap cmap = getCentralityFromFile(dir, "HFhitsAMPT_2760GeV", 0, 2); - - cout<<"map size "<getBin(23000); - cout< -#include -#include - -#include -#include -#include -#include - - - -#if !defined(__CINT__) && !defined(__MAKECINT__) - -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/FWLite/interface/Event.h" -#include "FWCore/Utilities/interface/InputTag.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityBins.h" -#include "DataFormats/CaloTowers/interface/CaloTower.h" -#include "DataFormats/HeavyIonEvent/interface/Centrality.h" -#include "SimDataFormats/HiGenData/interface/GenHIEvent.h" - -#endif - -using namespace std; - - -void testCentralityFWLite(){ - - TFile * centFile = new TFile("../data/CentralityTables.root"); - TFile* infile = new TFile("/net/hisrv0001/home/yetkin/pstore02/ana/Hydjet_MinBias_d20100222/DEF33D38-12E8-DE11-BA8F-0019B9CACF1A.root"); - fwlite::Event event(infile); - TFile* outFile = new TFile("test.root","recreate"); - - TH1D::SetDefaultSumw2(); - TH2D* hNpart = new TH2D("hNpart",";Npart Truth;Npart RECO",50,0,500,50,0,500); - TH1D* hBins = new TH1D("hBins",";bins;events",44,-1,21); - - CentralityBins::RunMap HFhitBinMap = getCentralityFromFile(centFile,"makeCentralityTableTFile", "HFhitsAMPT_2760GeV", 149500, 155000); - - // loop the events - unsigned int iEvent=0; - for(event.toBegin(); !event.atEnd(); ++event, ++iEvent){ - edm::EventBase const & ev = event; - if( iEvent % 10 == 0 ) cout<<"Processing event : "< mc; - ev.getByLabel(edm::InputTag("heavyIon"),mc); - edm::Handle cent; - ev.getByLabel(edm::InputTag("hiCentrality"),cent); - - double b = mc->b(); - double npart = mc->Npart(); - double ncoll = mc->Ncoll(); - double nhard = mc->Nhard(); - - double hf = cent->EtHFhitSum(); - double hftp = cent->EtHFtowerSumPlus(); - double hftm = cent->EtHFtowerSumMinus(); - double eb = cent->EtEBSum(); - double eep = cent->EtEESumPlus(); - double eem = cent->EtEESumMinus(); - - int run = ev.id().run(); - - int bin = HFhitBinMap[run]->getBin(hf); - hBins->Fill(bin); - - double npartMean = HFhitBinMap[run]->NpartMean(hf); - double npartSigma = HFhitBinMap[run]->NpartSigma(hf); - hNpart->Fill(npart,npartMean); - } - - outFile->cd(); - hBins->Write(); - hNpart->Write(); - outFile->Write(); - -} diff --git a/RecoHI/HiCentralityAlgos/plugins/AnalyzerWithCentrality.cc b/RecoHI/HiCentralityAlgos/plugins/AnalyzerWithCentrality.cc new file mode 100644 index 0000000000000..ebb8f9ced1c10 --- /dev/null +++ b/RecoHI/HiCentralityAlgos/plugins/AnalyzerWithCentrality.cc @@ -0,0 +1,181 @@ + +// system include files +#include +#include + +// user include files +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/EDAnalyzer.h" + +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" + +#include "FWCore/ParameterSet/interface/ParameterSet.h" + +#include "RecoHI/HiCentralityAlgos/interface/CentralityProvider.h" +#include "CommonTools/UtilAlgos/interface/TFileService.h" +#include "FWCore/ServiceRegistry/interface/Service.h" + +#include "TNtuple.h" +#include "TH1D.h" +using namespace std; + +// +// class declaration +// + +class AnalyzerWithCentrality : public edm::EDAnalyzer { + public: + explicit AnalyzerWithCentrality(const edm::ParameterSet&); + explicit AnalyzerWithCentrality(const edm::ParameterSet&, const edm::EventSetup&, edm::ConsumesCollector &&); + ~AnalyzerWithCentrality(); + + + private: + virtual void beginJob() ; + virtual void analyze(const edm::Event&, const edm::EventSetup&); + virtual void endJob() ; + + // ----------member data --------------------------- + + CentralityProvider * centrality_; + edm::Service fs; + TH1D* h1; + TNtuple* nt; +}; + +// +// constants, enums and typedefs +// + +// +// static data member definitions +// + +// +// constructors and destructor +// +AnalyzerWithCentrality::AnalyzerWithCentrality(const edm::ParameterSet& iConfig) : +centrality_(0) +{ + + //now do what ever initialization is needed + h1 = fs->make("h1","histogram",100,0,100); + nt = fs->make("hi","hi","hf:hft:hftp:hftm:eb:ee:eep:eem:npix:et:zdc:zdcp:zdcm:bin:trig"); +} + +AnalyzerWithCentrality::AnalyzerWithCentrality(const edm::ParameterSet& iConfig, const edm::EventSetup& iSetup, edm::ConsumesCollector && iC) : +centrality_(0) +{ + using namespace edm; + if(!centrality_) centrality_ = new CentralityProvider(iSetup, std::move(iC)); + + //now do what ever initialization is needed + h1 = fs->make("h1","histogram",100,0,100); + nt = fs->make("hi","hi","hf:hft:hftp:hftm:eb:ee:eep:eem:npix:et:zdc:zdcp:zdcm:bin:trig"); +} + +AnalyzerWithCentrality::~AnalyzerWithCentrality() +{ + + // do anything here that needs to be done at desctruction time + // (e.g. close files, deallocate resources etc.) + +} + + +// +// member functions +// + +// ------------ method called to for each event ------------ +void +AnalyzerWithCentrality::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) +{ + using namespace edm; + centrality_->newEvent(iEvent,iSetup); + + double hf = centrality_->raw()->EtHFhitSum(); + double hft = centrality_->raw()->EtHFtowerSum(); + double hftp = centrality_->raw()->EtHFtowerSumPlus(); + double hftm = centrality_->raw()->EtHFtowerSumMinus(); + double eb = centrality_->raw()->EtEBSum(); + double ee = centrality_->raw()->EtEESum(); + double eep = centrality_->raw()->EtEESumPlus(); + double eem = centrality_->raw()->EtEESumMinus(); + double zdc = centrality_->raw()->zdcSum(); + double zdcm = centrality_->raw()->zdcSumMinus(); + double zdcp = centrality_->raw()->zdcSumPlus(); + double npix = centrality_->raw()->multiplicityPixel(); + double et = centrality_->raw()->EtMidRapiditySum(); + + cout<<"Centrality variables in the event:"<print(); + + cout<<"Centrality of the event : "<centralityValue()<getBin(); + cout<<"a"<Fill(hf,hft,hftp,hftm,eb,ee,eep,eem,npix,et,zdc,zdcp,zdcm,bin,1); + cout<<"b"<Fill(bin); + cout<<"c"<getNbins(); + cout<<"d"<NpartMean(); + double npartSigma = centrality_->NpartSigma(); + cout<<"Npart Mean : "<NpartMeanOfBin(bin); + npartSigma = centrality_->NpartSigmaOfBin(bin); + + double ncollMean = centrality_->NcollMean(); + double ncollSigma = centrality_->NcollSigma(); + cout<<"Ncoll Mean : "<NcollMeanOfBin(bin); + ncollSigma = centrality_->NcollSigmaOfBin(bin); + + + double nhardMean = centrality_->NhardMean(); + double nhardSigma = centrality_->NhardSigma(); + cout<<"Nhard Mean : "<bMean(); + double bSigma = centrality_->bSigma(); + cout<<"b Mean : "<bMeanOfBin(bin); + bSigma = centrality_->bSigmaOfBin(bin); + + +} + + +// ------------ method called once each job just before starting event loop ------------ +void +AnalyzerWithCentrality::beginJob() +{ +} + +// ------------ method called once each job just after ending the event loop ------------ +void +AnalyzerWithCentrality::endJob() { +} + +//define this as a plug-in +DEFINE_FWK_MODULE(AnalyzerWithCentrality); diff --git a/RecoHI/HiCentralityAlgos/plugins/BuildFile.xml b/RecoHI/HiCentralityAlgos/plugins/BuildFile.xml new file mode 100644 index 0000000000000..eee1eb4fe7d60 --- /dev/null +++ b/RecoHI/HiCentralityAlgos/plugins/BuildFile.xml @@ -0,0 +1,4 @@ + + + + diff --git a/RecoHI/HiCentralityAlgos/src/CentralityBinProducer.cc b/RecoHI/HiCentralityAlgos/plugins/CentralityBinProducer.cc similarity index 84% rename from RecoHI/HiCentralityAlgos/src/CentralityBinProducer.cc rename to RecoHI/HiCentralityAlgos/plugins/CentralityBinProducer.cc index 874bf40b6ddad..afb152a5f0dcd 100644 --- a/RecoHI/HiCentralityAlgos/src/CentralityBinProducer.cc +++ b/RecoHI/HiCentralityAlgos/plugins/CentralityBinProducer.cc @@ -31,7 +31,7 @@ #include "FWCore/Utilities/interface/InputTag.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityProvider.h" +#include "RecoHI/HiCentralityAlgos/interface/CentralityProvider.h" // @@ -41,6 +41,7 @@ class CentralityBinProducer : public edm::EDProducer { public: explicit CentralityBinProducer(const edm::ParameterSet&); + explicit CentralityBinProducer(const edm::ParameterSet&, const edm::EventSetup&, edm::ConsumesCollector &&); ~CentralityBinProducer(); private: @@ -66,9 +67,14 @@ class CentralityBinProducer : public edm::EDProducer { // // constructors and destructor // -CentralityBinProducer::CentralityBinProducer(const edm::ParameterSet& iConfig) : +CentralityBinProducer::CentralityBinProducer(const edm::ParameterSet& iConfig){} + +CentralityBinProducer::CentralityBinProducer(const edm::ParameterSet& iConfig, const edm::EventSetup& iSetup, edm::ConsumesCollector && iC) : centrality_(0) { + using namespace edm; + if(!centrality_) centrality_ = new CentralityProvider(iSetup, std::move(iC)); + produces(); } @@ -90,8 +96,6 @@ CentralityBinProducer::~CentralityBinProducer() void CentralityBinProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { - using namespace edm; - if(!centrality_) centrality_ = new CentralityProvider(iSetup); centrality_->newEvent(iEvent,iSetup); int bin = centrality_->getBin(); diff --git a/RecoHI/HiCentralityAlgos/src/CentralityFilter.cc b/RecoHI/HiCentralityAlgos/plugins/CentralityFilter.cc similarity index 78% rename from RecoHI/HiCentralityAlgos/src/CentralityFilter.cc rename to RecoHI/HiCentralityAlgos/plugins/CentralityFilter.cc index 4e4781368abc4..faf1e89175664 100644 --- a/RecoHI/HiCentralityAlgos/src/CentralityFilter.cc +++ b/RecoHI/HiCentralityAlgos/plugins/CentralityFilter.cc @@ -1,15 +1,3 @@ -// -*- C++ -*- -// -// Package: CentralityFilter -// Class: CentralityFilter -// -/**\class CentralityFilter CentralityFilter.cc CmsHi/CentralityFilter/src/CentralityFilter.cc - - Description: [one line class summary] - - Implementation: - [Notes on implementation] -*/ // // Original Author: Yetkin Yilmaz,32 4-A08,+41227673039, // Created: Tue Jun 29 12:19:49 CEST 2010 @@ -29,7 +17,7 @@ #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/Utilities/interface/Exception.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityProvider.h" +#include "RecoHI/HiCentralityAlgos/interface/CentralityProvider.h" // // class declaration @@ -37,13 +25,14 @@ class CentralityFilter : public edm::EDFilter { public: + explicit CentralityFilter(const edm::ParameterSet&, const edm::EventSetup&, edm::ConsumesCollector &&); explicit CentralityFilter(const edm::ParameterSet&); ~CentralityFilter(); private: - virtual void beginJob() override ; - virtual bool filter(edm::Event&, const edm::EventSetup&) override; - virtual void endJob() override ; + virtual void beginJob() ; + virtual bool filter(edm::Event&, const edm::EventSetup&); + virtual void endJob() ; // ----------member data --------------------------- CentralityProvider * centrality_; @@ -61,11 +50,15 @@ class CentralityFilter : public edm::EDFilter { // // constructors and destructor // -CentralityFilter::CentralityFilter(const edm::ParameterSet& iConfig) : +CentralityFilter::CentralityFilter(const edm::ParameterSet& iConfig){} + +CentralityFilter::CentralityFilter(const edm::ParameterSet& iConfig, const edm::EventSetup& iSetup, edm::ConsumesCollector && iC): centrality_(0), selectedBins_(iConfig.getParameter >("selectedBins")) { //now do what ever initialization is needed + using namespace edm; + if(!centrality_) centrality_ = new CentralityProvider(iSetup, std::move(iC)); } @@ -90,7 +83,6 @@ CentralityFilter::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) bool result = false; using namespace edm; - if(!centrality_) centrality_ = new CentralityProvider(iSetup); centrality_->newEvent(iEvent,iSetup); int bin = centrality_->getBin(); diff --git a/RecoHI/HiCentralityAlgos/src/CentralityProducer.cc b/RecoHI/HiCentralityAlgos/plugins/CentralityProducer.cc similarity index 57% rename from RecoHI/HiCentralityAlgos/src/CentralityProducer.cc rename to RecoHI/HiCentralityAlgos/plugins/CentralityProducer.cc index 9db0618bf061d..3f1d2c5d0671f 100644 --- a/RecoHI/HiCentralityAlgos/src/CentralityProducer.cc +++ b/RecoHI/HiCentralityAlgos/plugins/CentralityProducer.cc @@ -1,15 +1,3 @@ -// -*- C++ -*- -// -// Package: CentralityProducer -// Class: CentralityProducer -// -/**\class CentralityProducer CentralityProducer.cc RecoHI/CentralityProducer/src/CentralityProducer.cc - - Description: - - Implementation: - -*/ // // Original Author: Yetkin Yilmaz, Young Soo Park // Created: Wed Jun 11 15:31:41 CEST 2008 @@ -23,7 +11,7 @@ // user include files #include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/EDFilter.h" +#include "FWCore/Framework/interface/EDProducer.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/EventSetup.h" @@ -38,11 +26,15 @@ #include "DataFormats/CaloTowers/interface/CaloTowerCollection.h" #include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h" #include "DataFormats/EgammaReco/interface/BasicClusterFwd.h" + #include "DataFormats/Common/interface/Ref.h" #include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h" #include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHit.h" +#include "DataFormats/SiPixelDetId/interface/PXBDetId.h" #include "DataFormats/TrackReco/interface/TrackFwd.h" #include "DataFormats/TrackReco/interface/Track.h" +#include "DataFormats/VertexReco/interface/Vertex.h" +#include "DataFormats/VertexReco/interface/VertexFwd.h" #include "Geometry/Records/interface/CaloGeometryRecord.h" #include "Geometry/CaloGeometry/interface/CaloGeometry.h" @@ -51,31 +43,31 @@ #include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetUnit.h" using namespace std; +using namespace edm; +using namespace reco; // // class declaration // -namespace reco{ -class CentralityProducer : public edm::EDFilter { +namespace reco { +class CentralityProducer : public edm::EDProducer { public: explicit CentralityProducer(const edm::ParameterSet&); ~CentralityProducer(); private: virtual void beginJob() override ; - virtual bool filter(edm::Event&, const edm::EventSetup&) override; + virtual void produce(edm::Event&, const edm::EventSetup&) override; virtual void endJob() override ; // ----------member data --------------------------- bool recoLevel_; - bool doFilter_; bool produceHFhits_; bool produceHFtowers_; bool produceEcalhits_; - bool produceBasicClusters_; bool produceZDChits_; bool produceETmidRap_; bool producePixelhits_; @@ -88,25 +80,26 @@ class CentralityProducer : public edm::EDFilter { double midRapidityRange_; double trackPtCut_; double trackEtaCut_; - - edm::InputTag srcHFhits_; - edm::InputTag srcTowers_; - edm::InputTag srcEEhits_; - edm::InputTag srcEBhits_; - edm::InputTag srcBasicClustersEE_; - edm::InputTag srcBasicClustersEB_; - edm::InputTag srcZDChits_; - edm::InputTag srcPixelhits_; - edm::InputTag srcTracks_; - edm::InputTag srcPixelTracks_; - - edm::InputTag reuseTag_; - + double hfEtaCut_; + + bool lowGainZDC_; + + edm::EDGetTokenT srcHFhits_; + edm::EDGetTokenT srcTowers_; + edm::EDGetTokenT srcEEhits_; + edm::EDGetTokenT srcEBhits_; + edm::EDGetTokenT srcZDChits_; + edm::EDGetTokenT srcPixelhits_; + edm::EDGetTokenT srcTracks_; + edm::EDGetTokenT srcPixelTracks_; + edm::EDGetTokenT srcVertex_; + edm::EDGetTokenT reuseTag_; + bool useQuality_; reco::TrackBase::TrackQuality trackQuality_; - const TrackerGeometry* trackGeo_; - const CaloGeometry* caloGeo_; + edm::ESHandle tGeo; + edm::ESHandle cGeo; }; @@ -122,15 +115,10 @@ class CentralityProducer : public edm::EDFilter { // // constructors and destructor // - CentralityProducer::CentralityProducer(const edm::ParameterSet& iConfig) : - trackGeo_(0), - caloGeo_(0) -{ + CentralityProducer::CentralityProducer(const edm::ParameterSet& iConfig) { //register your products - doFilter_ = iConfig.getParameter("doFilter"); produceHFhits_ = iConfig.getParameter("produceHFhits"); produceHFtowers_ = iConfig.getParameter("produceHFtowers"); - produceBasicClusters_ = iConfig.getParameter("produceBasicClusters"); produceEcalhits_ = iConfig.getParameter("produceEcalhits"); produceZDChits_ = iConfig.getParameter("produceZDChits"); produceETmidRap_ = iConfig.getParameter("produceETmidRapidity"); @@ -142,32 +130,37 @@ class CentralityProducer : public edm::EDFilter { trackPtCut_ = iConfig.getParameter("trackPtCut"); trackEtaCut_ = iConfig.getParameter("trackEtaCut"); - if(produceHFhits_) srcHFhits_ = iConfig.getParameter("srcHFhits"); - if(produceHFtowers_ || produceETmidRap_) srcTowers_ = iConfig.getParameter("srcTowers"); + hfEtaCut_ = iConfig.getParameter("hfEtaCut"); + + if(produceHFhits_) srcHFhits_ = consumes(iConfig.getParameter("srcHFhits")); + if(produceHFtowers_ || produceETmidRap_) srcTowers_ = consumes(iConfig.getParameter("srcTowers")); if(produceEcalhits_){ - srcEBhits_ = iConfig.getParameter("srcEBhits"); - srcEEhits_ = iConfig.getParameter("srcEEhits"); + srcEBhits_ = consumes(iConfig.getParameter("srcEBhits")); + srcEEhits_ = consumes(iConfig.getParameter("srcEEhits")); } - if(produceBasicClusters_){ - srcBasicClustersEE_ = iConfig.getParameter("srcBasicClustersEE"); - srcBasicClustersEB_ = iConfig.getParameter("srcBasicClustersEB"); + if(produceZDChits_){ + srcZDChits_ = consumes(iConfig.getParameter("srcZDChits")); + lowGainZDC_ = iConfig.getParameter("lowGainZDC"); } - if(produceZDChits_) srcZDChits_ = iConfig.getParameter("srcZDChits"); if(producePixelhits_){ - srcPixelhits_ = iConfig.getParameter("srcPixelhits"); + srcPixelhits_ = consumes(iConfig.getParameter("srcPixelhits")); doPixelCut_ = iConfig.getParameter("doPixelCut"); + srcVertex_ = consumes(iConfig.getParameter("srcVertex")); + } + if(produceTracks_) { + srcTracks_ = consumes(iConfig.getParameter("srcTracks")); + srcVertex_ = consumes(iConfig.getParameter("srcVertex")); } - if(produceTracks_) srcTracks_ = iConfig.getParameter("srcTracks"); - if(producePixelTracks_) srcPixelTracks_ = iConfig.getParameter("srcPixelTracks"); + if(producePixelTracks_) srcPixelTracks_ = consumes(iConfig.getParameter("srcPixelTracks")); - reuseAny_ = !produceHFhits_ || !produceHFtowers_ || !produceBasicClusters_ || !produceEcalhits_ || !produceZDChits_; - if(reuseAny_) reuseTag_ = iConfig.getParameter("srcReUse"); + reuseAny_ = iConfig.getParameter("reUseCentrality"); + if(reuseAny_) reuseTag_ = consumes(iConfig.getParameter("srcReUse")); useQuality_ = iConfig.getParameter("UseQuality"); trackQuality_ = TrackBase::qualityByName(iConfig.getParameter("TrackQuality")); - produces(); + produces(); } @@ -186,35 +179,24 @@ CentralityProducer::~CentralityProducer() // // ------------ method called to produce the data ------------ -bool -CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) +void +CentralityProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) { - using namespace edm; - using namespace reco; - if(!trackGeo_ && doPixelCut_){ - edm::ESHandle tGeo; - iSetup.get().get(tGeo); - trackGeo_ = tGeo.product(); - } - - if(!caloGeo_ && 0){ - edm::ESHandle cGeo; - iSetup.get().get(cGeo); - caloGeo_ = cGeo.product(); - } + if(producePixelhits_) iSetup.get().get(tGeo); + if(produceEcalhits_) iSetup.get().get(cGeo); std::auto_ptr creco(new Centrality()); Handle inputCentrality; - if(reuseAny_) iEvent.getByLabel(reuseTag_,inputCentrality); + if(reuseAny_) iEvent.getByToken(reuseTag_,inputCentrality); if(produceHFhits_){ creco->etHFhitSumPlus_ = 0; creco->etHFhitSumMinus_ = 0; Handle hits; - iEvent.getByLabel(srcHFhits_,hits); + iEvent.getByToken(srcHFhits_,hits); for( size_t ihit = 0; ihitsize(); ++ ihit){ const HFRecHit & rechit = (*hits)[ ihit ]; if(rechit.id().ieta() > 0 ) @@ -223,8 +205,10 @@ CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) creco->etHFhitSumMinus_ += rechit.energy(); } }else{ + if(reuseAny_){ creco->etHFhitSumMinus_ = inputCentrality->EtHFhitSumMinus(); creco->etHFhitSumPlus_ = inputCentrality->EtHFhitSumPlus(); + } } if(produceHFtowers_ || produceETmidRap_){ @@ -234,7 +218,7 @@ CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) Handle towers; - iEvent.getByLabel(srcTowers_,towers); + iEvent.getByToken(srcTowers_,towers); for( size_t i = 0; isize(); ++ i){ const CaloTower & tower = (*towers)[ i ]; @@ -243,60 +227,73 @@ CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) if(produceHFtowers_){ if(isHF && eta > 0){ creco->etHFtowerSumPlus_ += tower.pt(); + if(eta > hfEtaCut_) creco->etHFtruncatedPlus_ += tower.pt(); } if(isHF && eta < 0){ creco->etHFtowerSumMinus_ += tower.pt(); + if(eta < -hfEtaCut_) creco->etHFtruncatedMinus_ += tower.pt(); } }else{ + if(reuseAny_){ creco->etHFtowerSumMinus_ = inputCentrality->EtHFtowerSumMinus(); creco->etHFtowerSumPlus_ = inputCentrality->EtHFtowerSumPlus(); + creco->etHFtruncatedMinus_ = inputCentrality->EtHFtruncatedMinus(); + creco->etHFtruncatedPlus_ = inputCentrality->EtHFtruncatedPlus(); + } } if(produceETmidRap_){ if(fabs(eta) < midRapidityRange_) creco->etMidRapiditySum_ += tower.pt()/(midRapidityRange_*2.); - }else creco->etMidRapiditySum_ = inputCentrality->EtMidRapiditySum(); + }else if(reuseAny_) creco->etMidRapiditySum_ = inputCentrality->EtMidRapiditySum(); } }else{ + if(reuseAny_){ creco->etHFtowerSumMinus_ = inputCentrality->EtHFtowerSumMinus(); creco->etHFtowerSumPlus_ = inputCentrality->EtHFtowerSumPlus(); creco->etMidRapiditySum_ = inputCentrality->EtMidRapiditySum(); + } } - if(produceBasicClusters_){ + if(produceEcalhits_){ creco->etEESumPlus_ = 0; creco->etEESumMinus_ = 0; creco->etEBSum_ = 0; - - Handle clusters; - iEvent.getByLabel(srcBasicClustersEE_, clusters); - for( size_t i = 0; isize(); ++ i){ - const BasicCluster & cluster = (*clusters)[ i ]; - double eta = cluster.eta(); - double tg = cluster.position().rho()/cluster.position().r(); - double et = cluster.energy()*tg; - if(eta > 0) - creco->etEESumPlus_ += et; - if(eta < 0) - creco->etEESumMinus_ += et; + + Handle ebHits; + Handle eeHits; + + iEvent.getByToken(srcEBhits_,ebHits); + iEvent.getByToken(srcEEhits_,eeHits); + + for(unsigned int i = 0; i < ebHits->size(); ++i){ + const EcalRecHit & hit= (*ebHits)[i]; + const GlobalPoint& pos=cGeo->getPosition(hit.id()); + double et = hit.energy()*sin(pos.theta()); + creco->etEBSum_ += et; } - - iEvent.getByLabel(srcBasicClustersEB_, clusters); - for( size_t i = 0; isize(); ++ i){ - const BasicCluster & cluster = (*clusters)[ i ]; - double tg = cluster.position().rho()/cluster.position().r(); - double et = cluster.energy()*tg; - creco->etEBSum_ += et; + + for(unsigned int i = 0; i < eeHits->size(); ++i){ + const EcalRecHit & hit= (*eeHits)[i]; + const GlobalPoint& pos=cGeo->getPosition(hit.id()); + double et = hit.energy()*sin(pos.theta()); + if(pos.z() > 0){ + creco->etEESumPlus_ += et; + }else{ + creco->etEESumMinus_ += et; + } } }else{ - creco->etEESumMinus_ = inputCentrality->EtEESumMinus(); - creco->etEESumPlus_ = inputCentrality->EtEESumPlus(); - creco->etEBSum_ = inputCentrality->EtEBSum(); + if(reuseAny_){ + creco->etEESumMinus_ = inputCentrality->EtEESumMinus(); + creco->etEESumPlus_ = inputCentrality->EtEESumPlus(); + creco->etEBSum_ = inputCentrality->EtEBSum(); + } } if(producePixelhits_){ creco->pixelMultiplicity_ = 0; const SiPixelRecHitCollection* rechits; Handle rchts; - iEvent.getByLabel(srcPixelhits_,rchts); + iEvent.getByToken(srcPixelhits_,rchts); rechits = rchts.product(); int nPixel =0 ; for (SiPixelRecHitCollection::const_iterator it = rechits->begin(); it!=rechits->end();it++) @@ -310,7 +307,7 @@ CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) // add selection if needed, now all hits. if(doPixelCut_){ const SiPixelRecHit * recHit = &(*recHitIterator); - const PixelGeomDetUnit* pixelLayer = dynamic_cast (trackGeo_->idToDet(recHit->geographicalId())); + const PixelGeomDetUnit* pixelLayer = dynamic_cast (tGeo->idToDet(recHit->geographicalId())); GlobalPoint gpos = pixelLayer->toGlobal(recHit->localPosition()); math::XYZVector rechitPos(gpos.x(),gpos.y(),gpos.z()); double abeta = fabs(rechitPos.eta()); @@ -327,12 +324,44 @@ CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) } creco->pixelMultiplicity_ = nPixel; }else{ + if(reuseAny_){ creco->pixelMultiplicity_ = inputCentrality->multiplicityPixel(); + } } if(produceTracks_){ - edm::Handle tracks; - iEvent.getByLabel(srcTracks_,tracks); + + double vx=-999.; + double vy=-999.; + double vz=-999.; + double vxError=-999.; + double vyError=-999.; + double vzError=-999.; + math::XYZVector vtxPos(0,0,0); + + Handle recoVertices; + iEvent.getByToken(srcVertex_,recoVertices); + unsigned int daughter = 0; + int greatestvtx = 0; + + for (unsigned int i = 0 ; i< recoVertices->size(); ++i){ + daughter = (*recoVertices)[i].tracksSize(); + if( daughter > (*recoVertices)[greatestvtx].tracksSize()) greatestvtx = i; + } + + if(recoVertices->size()>0){ + vx = (*recoVertices)[greatestvtx].position().x(); + vy = (*recoVertices)[greatestvtx].position().y(); + vz = (*recoVertices)[greatestvtx].position().z(); + vxError = (*recoVertices)[greatestvtx].xError(); + vyError = (*recoVertices)[greatestvtx].yError(); + vzError = (*recoVertices)[greatestvtx].zError(); + } + + vtxPos = math::XYZVector(vx,vy,vz); + + Handle tracks; + iEvent.getByToken(srcTracks_,tracks); int nTracks = 0; double trackCounter = 0; @@ -342,13 +371,24 @@ CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) for(unsigned int i = 0 ; i < tracks->size(); ++i){ const Track& track = (*tracks)[i]; if(useQuality_ && !track.quality(trackQuality_)) continue; - nTracks++; if( track.pt() > trackPtCut_) trackCounter++; if(fabs(track.eta()) trackPtCut_) trackCounterEtaPt++; } + + math::XYZPoint v1(vx,vy, vz); + double dz= track.dz(v1); + double dzsigma = sqrt(track.dzError()*track.dzError()+vzError*vzError); + double dxy= track.dxy(v1); + double dxysigma = sqrt(track.dxyError()*track.dxyError()+vxError*vyError); + if( track.quality(trackQuality_) && + track.pt()>0.4 && fabs(track.eta())<2.4 && + track.ptError()/track.pt()<0.1 && fabs(dz/dzsigma)<3.0 && + fabs(dxy/dxysigma)<3.0){ + nTracks++; + } } creco->trackMultiplicity_ = nTracks; @@ -357,20 +397,24 @@ CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) creco->ntracksEtaPtCut_ = trackCounterEtaPt; }else{ + if(reuseAny_){ creco->trackMultiplicity_ = inputCentrality->Ntracks(); creco->ntracksPtCut_= inputCentrality->NtracksPtCut(); creco->ntracksEtaCut_= inputCentrality->NtracksEtaCut(); creco->ntracksEtaPtCut_= inputCentrality->NtracksEtaPtCut(); + } } if(producePixelTracks_){ - edm::Handle pixeltracks; - iEvent.getByLabel(srcPixelTracks_,pixeltracks); + Handle pixeltracks; + iEvent.getByToken(srcPixelTracks_,pixeltracks); int nPixelTracks = pixeltracks->size(); creco->nPixelTracks_ = nPixelTracks; } else{ - creco->nPixelTracks_ = inputCentrality->NpixelTracks(); + if(reuseAny_){ + creco->nPixelTracks_ = inputCentrality->NpixelTracks(); + } } if(produceZDChits_){ @@ -378,26 +422,38 @@ CentralityProducer::filter(edm::Event& iEvent, const edm::EventSetup& iSetup) creco->zdcSumMinus_ = 0; Handle hits; - bool zdcAvailable = iEvent.getByLabel(srcZDChits_,hits); + bool zdcAvailable = iEvent.getByToken(srcZDChits_,hits); if(zdcAvailable){ for( size_t ihit = 0; ihitsize(); ++ ihit){ const ZDCRecHit & rechit = (*hits)[ ihit ]; - if(rechit.id().zside() > 0 ) - creco->zdcSumPlus_ += rechit.energy(); - if(rechit.id().zside() < 0) - creco->zdcSumMinus_ += rechit.energy(); + if(rechit.id().zside() > 0 ) { + if(lowGainZDC_){ + creco->zdcSumPlus_ += rechit.lowGainEnergy(); + }else{ + creco->zdcSumPlus_ += rechit.energy(); + } + } + if(rechit.id().zside() < 0) { + if(lowGainZDC_){ + creco->zdcSumMinus_ += rechit.lowGainEnergy(); + }else{ + creco->zdcSumMinus_ += rechit.energy(); + } + } } }else{ creco->zdcSumPlus_ = -9; creco->zdcSumMinus_ = -9; } }else{ + if(reuseAny_){ creco->zdcSumMinus_ = inputCentrality->zdcSumMinus(); creco->zdcSumPlus_ = inputCentrality->zdcSumPlus(); + } } iEvent.put(creco); - return true; + } // ------------ method called once each job just before starting event loop ------------ @@ -408,9 +464,12 @@ CentralityProducer::beginJob() // ------------ method called once each job just after ending the event loop ------------ void -CentralityProducer::endJob() { -} +CentralityProducer::endJob() +{ } + //define this as a plug-in -DEFINE_FWK_MODULE(reco::CentralityProducer); +DEFINE_FWK_MODULE(CentralityProducer); + +} diff --git a/RecoHI/HiCentralityAlgos/src/CentralityTableProducer.cc b/RecoHI/HiCentralityAlgos/plugins/CentralityTableProducer.cc similarity index 90% rename from RecoHI/HiCentralityAlgos/src/CentralityTableProducer.cc rename to RecoHI/HiCentralityAlgos/plugins/CentralityTableProducer.cc index 378a7c4306e87..99d5705e81067 100644 --- a/RecoHI/HiCentralityAlgos/src/CentralityTableProducer.cc +++ b/RecoHI/HiCentralityAlgos/plugins/CentralityTableProducer.cc @@ -1,21 +1,3 @@ -// -*- C++ -*- -// -// Package: CentralityTableProducer -// Class: CentralityTableProducer -// -/**\class CentralityTableProducer CentralityTableProducer.cc yetkin/CentralityTableProducer/src/CentralityTableProducer.cc - - Description: - - Implementation: - -*/ -// -// Original Author: Yetkin Yilmaz -// Created: Wed May 2 21:41:30 EDT 2007 -// -// - // system include files #include @@ -39,13 +21,14 @@ #include "DataFormats/Candidate/interface/Candidate.h" #include "DataFormats/RecoCandidate/interface/RecoCaloTowerCandidate.h" #include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h" + #include "DataFormats/Common/interface/Ref.h" #include "CondFormats/DataRecord/interface/HeavyIonRcd.h" #include "CondFormats/HIObjects/interface/CentralityTable.h" #include "CondCore/DBOutputService/interface/PoolDBOutputService.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityProvider.h" +#include "RecoHI/HiCentralityAlgos/interface/CentralityProvider.h" #include @@ -57,6 +40,7 @@ using namespace std; class CentralityTableProducer : public edm::EDAnalyzer { public: explicit CentralityTableProducer(const edm::ParameterSet&); + explicit CentralityTableProducer(const edm::ParameterSet&, const edm::EventSetup&, edm::ConsumesCollector &&); ~CentralityTableProducer(); private: @@ -68,8 +52,8 @@ class CentralityTableProducer : public edm::EDAnalyzer { bool makeDBFromTFile_; bool makeTFileFromDB_; - bool firstRunOnly_; - bool debug_; + bool firstRunOnly_; + bool debug_; edm::ESHandle inputDB_; TFile* inputTFile_; @@ -79,6 +63,7 @@ class CentralityTableProducer : public edm::EDAnalyzer { string rootTag_; ofstream text_; + CentralityProvider *cent; CentralityTable* CT; const CentralityBins* CB; @@ -97,7 +82,9 @@ class CentralityTableProducer : public edm::EDAnalyzer { // // constructors and destructor // -CentralityTableProducer::CentralityTableProducer(const edm::ParameterSet& iConfig): +CentralityTableProducer::CentralityTableProducer(const edm::ParameterSet& iConfig){} + +CentralityTableProducer::CentralityTableProducer(const edm::ParameterSet& iConfig, const edm::EventSetup& iSetup, edm::ConsumesCollector && iC): text_("bins.txt"), runnum_(0) { @@ -112,6 +99,7 @@ CentralityTableProducer::CentralityTableProducer(const edm::ParameterSet& iConfi inputTFile_ = new TFile(inputTFileName_.data(),"read"); cout<newRun(iSetup); + if(debug_) cent->print(); TFileDirectory subDir = fs->mkdir(Form("run%d",runnum_)); - CB = subDir.make((CentralityBins)cent); + CB = subDir.make((CentralityBins) *cent); } } diff --git a/RecoHI/HiCentralityAlgos/src/HiTrivialConditionRetriever.cc b/RecoHI/HiCentralityAlgos/plugins/HiTrivialConditionRetriever.cc similarity index 90% rename from RecoHI/HiCentralityAlgos/src/HiTrivialConditionRetriever.cc rename to RecoHI/HiCentralityAlgos/plugins/HiTrivialConditionRetriever.cc index a4541f128264f..1316ff4c8d063 100644 --- a/RecoHI/HiCentralityAlgos/src/HiTrivialConditionRetriever.cc +++ b/RecoHI/HiCentralityAlgos/plugins/HiTrivialConditionRetriever.cc @@ -1,15 +1,3 @@ -// -*- C++ -*- -// -// Package: HiTrivialConditionRetriever -// Class: HiTrivialConditionRetriever -// -/**\class HiTrivialConditionRetriever HiTrivialConditionRetriever.cc yetkin/HiTrivialConditionRetriever/src/HiTrivialConditionRetriever.cc - - Description: - - Implementation: - -*/ // // Original Author: Yetkin Yilmaz // Created: Wed May 2 21:41:30 EDT 2007 @@ -50,7 +38,7 @@ class HiTrivialConditionRetriever : public edm::ESProducer, //overriding from ContextRecordIntervalFinder virtual void setIntervalFor( const edm::eventsetup::EventSetupRecordKey&, const edm::IOVSyncValue& , - edm::ValidityInterval& ) override ; + edm::ValidityInterval& ) ; private: virtual std::auto_ptr produceTable( const HeavyIonRcd& ); diff --git a/RecoHI/HiCentralityAlgos/python/HiCentrality_cfi.py b/RecoHI/HiCentralityAlgos/python/HiCentrality_cfi.py index aa9d6309e435d..b83701cd27c67 100644 --- a/RecoHI/HiCentralityAlgos/python/HiCentrality_cfi.py +++ b/RecoHI/HiCentralityAlgos/python/HiCentrality_cfi.py @@ -27,11 +27,10 @@ srcZDChits = cms.InputTag("zdcreco"), srcPixelhits = cms.InputTag("siPixelRecHits"), doPixelCut = cms.bool(False), - srcTracks = cms.InputTag("hiSelectedTracks"), + srcTracks = cms.InputTag("hiGeneralTracks"), UseQuality = cms.bool(True), TrackQuality = cms.string('highPurity'), srcReUse = cms.InputTag("hiCentrality"), - srcPixelTracks = cms.InputTag("hiPixel3PrimTracks") - ) - - + srcPixelTracks = cms.InputTag("hiPixel3PrimTracks"), + lowGainZDC = cms.bool(True), + ) diff --git a/RecoHI/HiCentralityAlgos/python/pACentrality_cfi.py b/RecoHI/HiCentralityAlgos/python/pACentrality_cfi.py new file mode 100644 index 0000000000000..88df31b77e28b --- /dev/null +++ b/RecoHI/HiCentralityAlgos/python/pACentrality_cfi.py @@ -0,0 +1,37 @@ +import FWCore.ParameterSet.Config as cms + +pACentrality = cms.EDProducer("CentralityProducer", + + produceHFhits = cms.bool(True), + produceHFtowers = cms.bool(True), + produceEcalhits = cms.bool(True), + produceZDChits = cms.bool(True), + produceETmidRapidity = cms.bool(True), + producePixelhits = cms.bool(True), + produceTracks = cms.bool(True), + producePixelTracks = cms.bool(True), + reUseCentrality = cms.bool(False), + + srcHFhits = cms.InputTag("hfreco"), + srcTowers = cms.InputTag("towerMaker"), + srcEBhits = cms.InputTag("ecalRecHit","EcalRecHitsEB"), + srcEEhits = cms.InputTag("ecalRecHit","EcalRecHitsEE"), + srcZDChits = cms.InputTag("zdcreco"), + srcPixelhits = cms.InputTag("siPixelRecHits"), + srcTracks = cms.InputTag("generalTracks"), + srcVertex= cms.InputTag("offlinePrimaryVertices"), + srcReUse = cms.InputTag("pACentrality"), + srcPixelTracks = cms.InputTag("pixelTracks"), + + doPixelCut = cms.bool(True), + UseQuality = cms.bool(True), + TrackQuality = cms.string('highPurity'), + trackEtaCut = cms.double(2), + trackPtCut = cms.double(1), + hfEtaCut = cms.double(4), #hf above the absolute value of this cut is used + midRapidityRange = cms.double(1), + lowGainZDC = cms.bool(True), + + ) + + diff --git a/DataFormats/HeavyIonEvent/src/CentralityProvider.cc b/RecoHI/HiCentralityAlgos/src/CentralityProvider.cc similarity index 71% rename from DataFormats/HeavyIonEvent/src/CentralityProvider.cc rename to RecoHI/HiCentralityAlgos/src/CentralityProvider.cc index 6a9146a72dae2..08cb8b4e2a9fe 100644 --- a/DataFormats/HeavyIonEvent/src/CentralityProvider.cc +++ b/RecoHI/HiCentralityAlgos/src/CentralityProvider.cc @@ -1,15 +1,23 @@ -#include "DataFormats/HeavyIonEvent/interface/CentralityProvider.h" +#include "RecoHI/HiCentralityAlgos/interface/CentralityProvider.h" -CentralityProvider::CentralityProvider(const edm::EventSetup& iSetup) : +CentralityProvider::CentralityProvider(const edm::EventSetup& iSetup){} + +CentralityProvider::CentralityProvider(const edm::EventSetup& iSetup, edm::ConsumesCollector && iC) : prevRun_(0), varType_(Missing) { const edm::ParameterSet &thepset = edm::getProcessParameterSet(); if(thepset.exists("HeavyIonGlobalParameters")){ edm::ParameterSet hiPset = thepset.getParameter("HeavyIonGlobalParameters"); - tag_ = hiPset.getParameter("centralitySrc"); + tag_ = iC.consumes(hiPset.getParameter("centralitySrc")); centralityVariable_ = hiPset.getParameter("centralityVariable"); + pPbRunFlip_ = hiPset.getUntrackedParameter("pPbRunFlip",99999999); if(centralityVariable_.compare("HFtowers") == 0) varType_ = HFtowers; + if(centralityVariable_.compare("HFtowersPlus") == 0) varType_ = HFtowersPlus; + if(centralityVariable_.compare("HFtowersMinus") == 0) varType_ = HFtowersMinus; + if(centralityVariable_.compare("HFtowersTrunc") == 0) varType_ = HFtowersTrunc; + if(centralityVariable_.compare("HFtowersPlusTrunc") == 0) varType_ = HFtowersPlusTrunc; + if(centralityVariable_.compare("HFtowersMinusTrunc") == 0) varType_ = HFtowersMinusTrunc; if(centralityVariable_.compare("HFhits") == 0) varType_ = HFhits; if(centralityVariable_.compare("PixelHits") == 0) varType_ = PixelHits; if(centralityVariable_.compare("PixelTracks") == 0) varType_ = PixelTracks; @@ -32,8 +40,15 @@ CentralityProvider::CentralityProvider(const edm::EventSetup& iSetup) : } void CentralityProvider::newEvent(const edm::Event& ev,const edm::EventSetup& iSetup){ - ev.getByLabel(tag_,chandle_); + ev.getByToken(tag_,chandle_); if(ev.id().run() == prevRun_) return; + if(prevRun_ < pPbRunFlip_ && ev.id().run() >= pPbRunFlip_){ + std::cout<<"Attention, the sides are flipped from this run on!"<EtHFhitSum(); if(varType_ == HFtowers) var = chandle_->EtHFtowerSum(); + if(varType_ == HFtowersPlus) var = chandle_->EtHFtowerSumPlus(); + if(varType_ == HFtowersMinus) var = chandle_->EtHFtowerSumMinus(); + if(varType_ == HFtowersTrunc) var = chandle_->EtHFtruncated(); + if(varType_ == HFtowersPlusTrunc) var = chandle_->EtHFtruncatedPlus(); + if(varType_ == HFtowersMinusTrunc) var = chandle_->EtHFtruncatedMinus(); if(varType_ == PixelHits) var = chandle_->multiplicityPixel(); if(varType_ == PixelTracks) var = chandle_->NpixelTracks(); if(varType_ == Tracks) var = chandle_->Ntracks(); diff --git a/RecoHI/HiCentralityAlgos/test/AnalyzerWithCentrality.cc b/RecoHI/HiCentralityAlgos/test/AnalyzerWithCentrality.cc index 8a014e61de334..9d5380b55acb8 100644 --- a/RecoHI/HiCentralityAlgos/test/AnalyzerWithCentrality.cc +++ b/RecoHI/HiCentralityAlgos/test/AnalyzerWithCentrality.cc @@ -1,21 +1,3 @@ -// -*- C++ -*- -// -// Package: AnalyzerWithCentrality -// Class: AnalyzerWithCentrality -// -/**\class AnalyzerWithCentrality AnalyzerWithCentrality.cc RecoHI/AnalyzerWithCentrality/src/AnalyzerWithCentrality.cc - - Description: [one line class summary] - - Implementation: - [Notes on implementation] -*/ -// -// Original Author: Yetkin Yilmaz -// Created: Mon Mar 1 17:18:04 EST 2010 -// -// - // system include files #include @@ -30,7 +12,7 @@ #include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityProvider.h" +#include "RecoHI/HiCentralityAlgos/interface/CentralityProvider.h" #include "CommonTools/UtilAlgos/interface/TFileService.h" #include "FWCore/ServiceRegistry/interface/Service.h" @@ -45,6 +27,7 @@ using namespace std; class AnalyzerWithCentrality : public edm::EDAnalyzer { public: explicit AnalyzerWithCentrality(const edm::ParameterSet&); + explicit AnalyzerWithCentrality(const edm::ParameterSet&, const edm::EventSetup&, edm::ConsumesCollector &&); ~AnalyzerWithCentrality(); @@ -78,6 +61,18 @@ centrality_(0) //now do what ever initialization is needed h1 = fs->make("h1","histogram",100,0,100); nt = fs->make("hi","hi","hf:hft:hftp:hftm:eb:ee:eep:eem:npix:et:zdc:zdcp:zdcm:bin:trig"); + +} + +AnalyzerWithCentrality::AnalyzerWithCentrality(const edm::ParameterSet& iConfig, const edm::EventSetup& iSetup, edm::ConsumesCollector && iC) : +centrality_(0) +{ + //now do what ever initialization is needed + h1 = fs->make("h1","histogram",100,0,100); + nt = fs->make("hi","hi","hf:hft:hftp:hftm:eb:ee:eep:eem:npix:et:zdc:zdcp:zdcm:bin:trig"); + + if(!centrality_) centrality_ = new CentralityProvider(iSetup, std::move(iC)); + } AnalyzerWithCentrality::~AnalyzerWithCentrality() @@ -98,7 +93,6 @@ void AnalyzerWithCentrality::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { using namespace edm; - if(!centrality_) centrality_ = new CentralityProvider(iSetup); centrality_->newEvent(iEvent,iSetup); double hf = centrality_->raw()->EtHFhitSum(); diff --git a/RecoHI/HiCentralityAlgos/test/BuildFile.xml b/RecoHI/HiCentralityAlgos/test/BuildFile.xml index fbe3668438471..94eb90791d092 100644 --- a/RecoHI/HiCentralityAlgos/test/BuildFile.xml +++ b/RecoHI/HiCentralityAlgos/test/BuildFile.xml @@ -1,18 +1,4 @@ - - - - - - - - - - - - - - - + - + diff --git a/RecoHI/HiCentralityAlgos/test/printCentralityTable.py b/RecoHI/HiCentralityAlgos/test/printCentralityTable.py new file mode 100644 index 0000000000000..c1ac759870869 --- /dev/null +++ b/RecoHI/HiCentralityAlgos/test/printCentralityTable.py @@ -0,0 +1,32 @@ + +import FWCore.ParameterSet.Config as cms + +process = cms.Process("TESTC") + +process.HeavyIonGlobalParameters = cms.PSet( + centralitySrc = cms.InputTag("hiCentrality"), + centralityVariable = cms.string("HFhits"), + nonDefaultGlauberModel = cms.string("") + ) + +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') +process.GlobalTag.globaltag = 'GR_R_39X_V1::All' + +from CmsHi.Analysis2010.CommonFunctions_cff import * +overrideCentrality(process) + +process.source = cms.Source("EmptyIOVSource", + timetype = cms.string("runnumber"), + firstValue = cms.uint64(151076), + lastValue = cms.uint64(151076), + interval = cms.uint64(1) + ) + +process.analyze = cms.EDAnalyzer("AnalyzerWithCentrality") + +process.TFileService = cms.Service('TFileService', + fileName = cms.string("histogramsAndTable.root") + ) + +process.p = cms.Path(process.analyze) + diff --git a/RecoHI/HiCentralityAlgos/tools/makeCentralityTable.C b/RecoHI/HiCentralityAlgos/tools/makeCentralityTable.C deleted file mode 100644 index b7ea8bf6ef7da..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/makeCentralityTable.C +++ /dev/null @@ -1,301 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if !defined(__CINT__) && !defined(__MAKECINT__) - - -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/FWLite/interface/Event.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityBins.h" -#include "FWCore/Utilities/interface/InputTag.h" -#include "DataFormats/FWLite/interface/ChainEvent.h" - -#include "DataFormats/CaloTowers/interface/CaloTower.h" -#include "DataFormats/HeavyIonEvent/interface/Centrality.h" -#include "SimDataFormats/HiGenData/interface/GenHIEvent.h" - -#endif - -void fitSlices(TH2*, TF1*); - -static bool onlySaveTable = false; -static const int nbinsMax = 40; - -using namespace std; -bool descend(float i,float j) { return (i infiles; - // TFile* infile = new TFile("/net/hisrv0001/home/yetkin/pstore02/ana/Hydjet_MinBias_d20100222/Hydjet_MinBias_4TeV_runs1to300.root"); - // fwlite::Event event(infile); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs1to10.root"); - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs11to20.root"); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs21to30.root"); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs31to40.root"); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs41to50.root"); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs51to60.root"); - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs61to70.root"); - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs71to80.root"); - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs81to90.root") - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs91to100.root"); - - fwlite::ChainEvent event(infiles); - - vector runnums; - - // Creating output table - TFile* outFile = new TFile("tables.root","update"); - TDirectory* dir = outFile->mkdir(tag); - dir->cd(); - - TH1D::SetDefaultSumw2(); - CentralityBins* bins = new CentralityBins("noname","Test tag", nbins); - bins->table_.reserve(nbins); - - // Setting up variables & branches - double binboundaries[nbinsMax+1]; - vector values; - - // Determining bins of cross section - // loop over events - unsigned int events=0; - for(event.toBegin(); !event.atEnd(); ++event, ++events){ - edm::EventBase const & ev = event; - if( events % 100 == 0 ) cout<<"Processing event : "< mc; - ev.getByLabel(edm::InputTag("heavyIon"),mc); - edm::Handle cent; - ev.getByLabel(edm::InputTag("hiCentrality"),cent); - - double b = mc->b(); - double npart = mc->Npart(); - double ncoll = mc->Ncoll(); - double nhard = mc->Nhard(); - - double hf = cent->EtHFhitSum(); - double hftp = cent->EtHFtowerSumPlus(); - double hftm = cent->EtHFtowerSumMinus(); - double eb = cent->EtEBSum(); - double eep = cent->EtEESumPlus(); - double eem = cent->EtEESumMinus(); - - double parameter = 0; - if(label.compare("npart") == 0) parameter = npart; - if(label.compare("ncoll") == 0) parameter = ncoll; - if(label.compare("nhard") == 0) parameter = nhard; - if(label.compare("b") == 0) parameter = b; - if(label.compare("hf") == 0) parameter = hf; - if(label.compare("hft") == 0) parameter = hftp + hftm; - if(label.compare("eb") == 0) parameter = eb; - if(label.compare("ee") == 0) parameter = eep+eem; - - values.push_back(parameter); - - int run = event.id().run(); - if(runnums.size() == 0 || runnums[runnums.size()-1] != run) runnums.push_back(run); - } - - if(label.compare("b") == 0) sort(values.begin(),values.end(),descend); - else sort(values.begin(),values.end()); - - double max = values[events-1]; - binboundaries[nbins] = max; - - cout<<"-------------------------------------"< mc; - ev.getByLabel(edm::InputTag("heavyIon"),mc); - edm::Handle cent; - ev.getByLabel(edm::InputTag("hiCentrality"),cent); - - double b = mc->b(); - double npart = mc->Npart(); - double ncoll = mc->Ncoll(); - double nhard = mc->Nhard(); - - double hf = cent->EtHFhitSum(); - double hftp = cent->EtHFtowerSumPlus(); - double hftm = cent->EtHFtowerSumMinus(); - double eb = cent->EtEBSum(); - double eep = cent->EtEESumPlus(); - double eem = cent->EtEESumMinus(); - - double parameter = 0; - - if(label.compare("npart") == 0) parameter = npart; - if(label.compare("ncoll") == 0) parameter = ncoll; - if(label.compare("nhard") == 0) parameter = nhard; - if(label.compare("b") == 0) parameter = b; - if(label.compare("hf") == 0) parameter = hf; - if(label.compare("hft") == 0) parameter = hftp + hftm; - if(label.compare("eb") == 0) parameter = eb; - if(label.compare("ee") == 0) parameter = eep+eem; - - hNpart->Fill(parameter,npart); - hNcoll->Fill(parameter,ncoll); - hNhard->Fill(parameter,nhard); - hb->Fill(parameter,b); - } - - // Fitting Glauber distributions in bins to get mean and sigma values - - - TF1* fGaus = new TF1("fb","gaus(0)",0,2); - fGaus->SetParameter(0,1); - fGaus->SetParameter(1,0.04); - fGaus->SetParameter(2,0.02); - - fitSlices(hNpart,fGaus); - fitSlices(hNcoll,fGaus); - fitSlices(hNhard,fGaus); - fitSlices(hb,fGaus); - - /* - hNpart->FitSlicesY(); - hNcoll->FitSlicesY(); - hNhard->FitSlicesY(); - hb->FitSlicesY(); - */ - - TH1D* hNpartMean = (TH1D*)gDirectory->Get("hNpart_1"); - TH1D* hNpartSigma = (TH1D*)gDirectory->Get("hNpart_2"); - TH1D* hNcollMean = (TH1D*)gDirectory->Get("hNcoll_1"); - TH1D* hNcollSigma = (TH1D*)gDirectory->Get("hNcoll_2"); - TH1D* hNhardMean = (TH1D*)gDirectory->Get("hNhard_1"); - TH1D* hNhardSigma = (TH1D*)gDirectory->Get("hNhard_2"); - TH1D* hbMean = (TH1D*)gDirectory->Get("hb_1"); - TH1D* hbSigma = (TH1D*)gDirectory->Get("hb_2"); - - cout<<"-------------------------------------"<table_[nbins-i-1].n_part_mean = hNpartMean->GetBinContent(i); - bins->table_[nbins-i-1].n_part_var = hNpartSigma->GetBinContent(i); - bins->table_[nbins-i-1].n_coll_mean = hNcollMean->GetBinContent(i); - bins->table_[nbins-i-1].n_coll_var = hNcollSigma->GetBinContent(i); - bins->table_[nbins-i-1].b_mean = hbMean->GetBinContent(i); - bins->table_[nbins-i-1].b_var = hbSigma->GetBinContent(i); - bins->table_[nbins-i-1].n_hard_mean = hNhardMean->GetBinContent(i); - bins->table_[nbins-i-1].n_hard_var = hNhardSigma->GetBinContent(i); - bins->table_[nbins-i-1].bin_edge = binboundaries[i]; - - cout<GetBinContent(i)<<" " - <GetBinContent(i)<<" " - <GetBinContent(i)<<" " - <GetBinContent(i)<<" " - <GetBinContent(i)<<" " - <GetBinContent(i)<<" " - <Get("hNpart_0"); - hh->Delete(); - hh = (TH1D*)gDirectory->Get("hNcoll_0"); - hh->Delete(); - hh = (TH1D*)gDirectory->Get("hNhard_0"); - hh->Delete(); - hh = (TH1D*)gDirectory->Get("hb_0"); - hh->Delete(); - - hNpart->Delete(); - hNpartMean->Delete(); - hNpartSigma->Delete(); - hNcoll->Delete(); - hNcollMean->Delete(); - hNcollSigma->Delete(); - hNhard->Delete(); - hNhardMean->Delete(); - hNhardSigma->Delete(); - hb->Delete(); - hbMean->Delete(); - hbSigma->Delete(); - } - - for(int i = 0; i < runnums.size(); ++i){ - CentralityBins* binsForRun = (CentralityBins*) bins->Clone(); - binsForRun->SetName(Form("run%d",runnums[i])); - binsForRun->Write(); - } - - bins->Delete(); - outFile->Write(); - -} - -void fitSlices(TH2* hCorr, TF1* func){ - - int nBins = hCorr->GetNbinsX(); - - TH1D* hMean = new TH1D(Form("%s_1",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - TH1D* hSigma = new TH1D(Form("%s_2",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - - for(int i = 1; i < nBins; ++i){ - TH1D* h = hCorr->ProjectionY(Form("%s_bin%d",hCorr->GetName(),i),i-1,i); - h->Fit(func); - hMean->SetBinContent(i,func->GetParameter(1)); - hMean->SetBinError(i,func->GetParError(1)); - hSigma->SetBinContent(i,func->GetParameter(2)); - hSigma->SetBinError(i,func->GetParError(2)); - if(onlySaveTable){ - h->Delete(); - } - } -} - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/makeDBFromTFile.py b/RecoHI/HiCentralityAlgos/tools/makeDBFromTFile.py deleted file mode 100644 index a6c5d8c3c32e9..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/makeDBFromTFile.py +++ /dev/null @@ -1,61 +0,0 @@ -import FWCore.ParameterSet.VarParsing as VarParsing - -ivars = VarParsing.VarParsing('standard') - -ivars.register ('outputTag', - mult=ivars.multiplicity.singleton, - mytype=ivars.varType.string, - info="for testing") -ivars.outputTag="demo" - -ivars.register ('inputFile', - mult=ivars.multiplicity.singleton, - mytype=ivars.varType.string, - info="for testing") - -ivars.register ('outputFile', - mult=ivars.multiplicity.singleton, - mytype=ivars.varType.string, - info="for testing") - -ivars.inputFile="./input.root" -ivars.outputFile="./output.db" - -ivars.parseArguments() - -import FWCore.ParameterSet.Config as cms - -process = cms.Process('DUMMY') - -process.maxEvents = cms.untracked.PSet(input = cms.untracked.int32(-1)) -process.source = cms.Source("EmptyIOVSource", - timetype = cms.string("runnumber"), - firstValue = cms.uint64(1), - lastValue = cms.uint64(200), - interval = cms.uint64(1) - ) - -process.load("CondCore.DBCommon.CondDBCommon_cfi") -process.CondDBCommon.connect = "sqlite_file:" + ivars.outputFile - -process.PoolDBOutputService = cms.Service("PoolDBOutputService", - process.CondDBCommon, - timetype = cms.untracked.string("runnumber"), - toPut = cms.VPSet(cms.PSet(record = cms.string('HeavyIonRcd'), - tag = cms.string(ivars.outputTag) - ) - ) - ) - -process.makeCentralityTableDB = cms.EDAnalyzer('CentralityTableProducer', - makeDBFromTFile = cms.untracked.bool(True), - inputTFile = cms.string(ivars.inputFile), - rootTag = cms.string(ivars.outputTag) - ) - -process.step = cms.Path(process.makeCentralityTableDB) - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/makeDataCentralityTable.C b/RecoHI/HiCentralityAlgos/tools/makeDataCentralityTable.C deleted file mode 100644 index 5853b87fa31f9..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/makeDataCentralityTable.C +++ /dev/null @@ -1,223 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if !defined(__CINT__) && !defined(__MAKECINT__) - - -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/FWLite/interface/Event.h" -#include "DataFormats/FWLite/interface/ChainEvent.h" - -#include "DataFormats/HeavyIonEvent/interface/CentralityBins.h" -#include "FWCore/Utilities/interface/InputTag.h" - -#include "DataFormats/Common/interface/TriggerResults.h" - -#include "DataFormats/CaloTowers/interface/CaloTower.h" -#include "DataFormats/HeavyIonEvent/interface/Centrality.h" -#include "SimDataFormats/HiGenData/interface/GenHIEvent.h" - -#endif - -void fitSlices(TH2*, TF1*); - -static bool useEfficiencyHistogram = false; -static bool onlySaveTable = false; -static const int nbinsMax = 40; -static bool doTrigger = false; -static int trigNum = 1; // 6 for Hydjet 2.8 TeV sample - -using namespace std; -bool descend(float i,float j) { return (i>j); } - -void makeDataCentralityTable(int nbins = 40, const string label = "hf", const char * datatag = "HFhitBins",const char * mctag = "HFhitBinsMC", double EFF = 1){ - - // This macro assumes all inefficiency is in the most peripheral bin. - double MXS = 1. - EFF; - int nFiles = 1; - vector infiles; - // TFile* infile = new TFile("../data/Centrality0705_merged_runs1to10.root"); - - // fwlite::Event event(infile); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs1to10.root"); - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs11to20.root"); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs21to30.root"); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs31to40.root"); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs41to50.root"); - infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs51to60.root"); - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs61to70.root"); - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs71to80.root"); - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs81to90.root") - // infiles.push_back("~/hibat0007/aod/JulyExercise/MinBias0707/MinBias0707_runs91to100.root"); - - fwlite::ChainEvent event(infiles); - vector runnums; - - // Retrieving data - // Creating output table - TFile * centFile = new TFile("../data/CentralityTables.root","update"); - TH1* hEff; - if(useEfficiencyHistogram) hEff = (TH1*)centFile->Get(Form("%s/hEff",mctag)); - TDirectory* dir = centFile->mkdir(datatag); - dir->cd(); - - TH1D::SetDefaultSumw2(); - int runMC = 1; - - CentralityBins::RunMap HFhitBinMap = getCentralityFromFile(centFile,mctag,0,20); - nbins = HFhitBinMap[runMC]->getNbins(); - - CentralityBins* bins = new CentralityBins("noname","Test tag", nbins); - bins->table_.reserve(nbins); - - // Setting up variables & branches - double binboundaries[nbinsMax+1]; - vector values; - - // Determining bins of cross section - // loop over events - unsigned int events=0; - double xsec = 0; - - for(event.toBegin(); !event.atEnd(); ++event, ++events){ - edm::EventBase const & ev = event; - if( events % 100 == 0 ) cout<<"Processing event : "< cent; - ev.getByLabel(edm::InputTag("hiCentrality"),cent); - edm::Handle trig; - if(doTrigger){ - ev.getByLabel(edm::InputTag("TriggerResults","","HLT"),trig); - bool t = trig->at(trigNum).accept(); - if(!t) continue; - } - - double hf = cent->EtHFhitSum(); - double hftp = cent->EtHFtowerSumPlus(); - double hftm = cent->EtHFtowerSumMinus(); - double eb = cent->EtEBSum(); - double eep = cent->EtEESumPlus(); - double eem = cent->EtEESumMinus(); - double parameter = 0; - if(label.compare("hf") == 0) parameter = hf; - if(label.compare("hft") == 0) parameter = hftp + hftm; - if(label.compare("eb") == 0) parameter = eb; - if(label.compare("ee") == 0) parameter = eep+eem; - values.push_back(parameter); - - // Calculate corrected cross section - if(useEfficiencyHistogram){ - xsec += 1. / hEff->GetBinContent(hEff->FindBin(parameter)); - }else{ - xsec += 1.; - } - - int run = event.id().run(); - if(runnums.size() == 0 || runnums[runnums.size()-1] != run) runnums.push_back(run); - } - - if(label.compare("b") == 0) sort(values.begin(),values.end()); - else sort(values.begin(),values.end(),descend); - - double max = values[events-1]; - binboundaries[nbins] = max; - - cout<<"-------------------------------------"<GetBinContent(hEff->FindBin(val)); - }else{ - integral += 1; - } - if(integral > (int)((currentbin+1)*(xsec/nbins))){ - binboundaries[currentbin] = val; - cout<<" "<table_[i].n_part_mean = HFhitBinMap[runMC]->NpartMeanOfBin(i); - bins->table_[i].n_part_var = HFhitBinMap[runMC]->NpartSigmaOfBin(i); - bins->table_[i].n_coll_mean = HFhitBinMap[runMC]->NcollMeanOfBin(i); - bins->table_[i].n_coll_var = HFhitBinMap[runMC]->NcollSigmaOfBin(i); - bins->table_[i].b_mean = HFhitBinMap[runMC]->bMeanOfBin(i); - bins->table_[i].b_var = HFhitBinMap[runMC]->bSigmaOfBin(i); - bins->table_[i].n_hard_mean = HFhitBinMap[runMC]->NhardMeanOfBin(i); - bins->table_[i].n_hard_var = HFhitBinMap[runMC]->NhardSigmaOfBin(i); - bins->table_[i].bin_edge = binboundaries[i]; - - cout<NpartMeanOfBin(i)<<" " - <NpartSigmaOfBin(i)<<" " - <NcollMeanOfBin(i)<<" " - <NcollSigmaOfBin(i)<<" " - <bMeanOfBin(i)<<" " - <bSigmaOfBin(i)<<" " - <cd(); - dir->cd(); - for(int i = 0; i < runnums.size(); ++i){ - CentralityBins* binsForRun = (CentralityBins*) bins->Clone(); - binsForRun->SetName(Form("run%d",runnums[i])); - binsForRun->Write(); - } - - bins->Delete(); - centFile->Write(); - -} - -void fitSlices(TH2* hCorr, TF1* func){ - - int nBins = hCorr->GetNbinsX(); - - TH1D* hMean = new TH1D(Form("%s_1",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - TH1D* hSigma = new TH1D(Form("%s_2",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - - for(int i = 1; i < nBins; ++i){ - TH1D* h = hCorr->ProjectionY(Form("%s_bin%d",hCorr->GetName(),i),i-1,i); - h->Fit(func); - hMean->SetBinContent(i,func->GetParameter(1)); - hMean->SetBinError(i,func->GetParError(1)); - hSigma->SetBinContent(i,func->GetParameter(2)); - hSigma->SetBinError(i,func->GetParError(2)); - if(onlySaveTable){ - h->Delete(); - } - } -} - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/makeMCCentralityTable.C b/RecoHI/HiCentralityAlgos/tools/makeMCCentralityTable.C deleted file mode 100644 index 156418c9620d3..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/makeMCCentralityTable.C +++ /dev/null @@ -1,308 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if !defined(__CINT__) && !defined(__MAKECINT__) - - -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/FWLite/interface/Event.h" -#include "DataFormats/FWLite/interface/ChainEvent.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityBins.h" -#include "FWCore/Utilities/interface/InputTag.h" - -#include "DataFormats/CaloTowers/interface/CaloTower.h" -#include "DataFormats/HeavyIonEvent/interface/Centrality.h" -#include "SimDataFormats/HiGenData/interface/GenHIEvent.h" - -#endif - -void fitSlices(TH2*, TF1*); - -static bool ZS = false; -static bool useFits = false; -static bool onlySaveTable = false; -static const int nbinsMax = 40; - -using namespace std; -bool descend(float i,float j) { return (i infiles; - - if(ZS){ - infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_ZS_01/AMPT_MB_ZS_0711_runs1to50.root"); - infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_ZS_01/AMPT_MB_ZS_0711_runs51to100.root"); - infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_ZS_01/AMPT_MB_ZS_0711_runs101to150.root"); - }else{ - // infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_NZS_02/AMPT_MB_ZS_0711_runs1to20.root"); - infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_NZS_02/AMPT_MB_ZS_0711_runs21to40.root"); - // infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_NZS_02/AMPT_MB_ZS_0711_runs41to60.root"); - infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_NZS_02/AMPT_MB_ZS_0711_runs61to80.root"); - // infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_NZS_02/AMPT_MB_ZS_0711_runs81to100.root"); - infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_NZS_02/AMPT_MB_ZS_0711_runs101to120.root"); - // infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_NZS_02/AMPT_MB_ZS_0711_runs121to140.root"); - infiles.push_back("/net/hisrv0001/home/yetkin/hidsk0001/aod/JulyExercise/AMPT_NZS_02/AMPT_MB_ZS_0711_runs141to160.root"); - } - - fwlite::ChainEvent event(infiles); - - // TFile* infile = new TFile("/net/hisrv0001/home/yetkin/pstore02/ana/Hydjet_MinBias_2760GeV_d20100305/Hydjet_MinBias_2760GeV_runs1to1000.root"); - // TFile* infile = new TFile("/net/hisrv0001/home/yetkin/pstore02/ana/Hydjet_MinBias_4TeV_d20100305/Hydjet_MinBias_4TeV_runs1to500.root"); - // fwlite::Event event(infile); - vector runnums; - - // Creating output table - TFile* outFile = new TFile("tables10binsHalfEvents.root","update"); - TDirectory* dir = outFile->mkdir(tag); - dir->cd(); - TNtuple* nt = new TNtuple("nt","","hf:bin:b:npart:ncoll:nhard"); - - TH1D::SetDefaultSumw2(); - CentralityBins* bins = new CentralityBins("noname","Test tag", nbins); - bins->table_.reserve(nbins); - - // Setting up variables & branches - double binboundaries[nbinsMax+1]; - vector values; - - // Determining bins of cross section - // loop over events - unsigned int events=0; - for(event.toBegin(); !event.atEnd() && (maxEvents < 0 || events< maxEvents); ++event, ++events){ - edm::EventBase const & ev = event; - if( events % 100 == 0 ) cout<<"Processing event : "< mc; - ev.getByLabel(edm::InputTag("heavyIon"),mc); - edm::Handle cent; - ev.getByLabel(edm::InputTag("hiCentrality"),cent); - - double b = mc->b(); - double npart = mc->Npart(); - double ncoll = mc->Ncoll(); - double nhard = mc->Nhard(); - - double hf = cent->EtHFhitSum(); - double hftp = cent->EtHFtowerSumPlus(); - double hftm = cent->EtHFtowerSumMinus(); - double eb = cent->EtEBSum(); - double eep = cent->EtEESumPlus(); - double eem = cent->EtEESumMinus(); - double etmr = cent->EtMidRapiditySum(); - double npix = cent->multiplicityPixel(); - - double parameter = 0; - if(label.compare("npart") == 0) parameter = npart; - if(label.compare("ncoll") == 0) parameter = ncoll; - if(label.compare("nhard") == 0) parameter = nhard; - if(label.compare("b") == 0) parameter = b; - if(label.compare("hf") == 0) parameter = hf; - if(label.compare("hft") == 0) parameter = hftp + hftm; - if(label.compare("eb") == 0) parameter = eb; - if(label.compare("ee") == 0) parameter = eep+eem; - if(label.compare("etmr") == 0) parameter = etmr; - if(label.compare("npix") == 0) parameter = npix; - - values.push_back(parameter); - - int run = event.id().run(); - if(runnums.size() == 0 || runnums[runnums.size()-1] != run) runnums.push_back(run); - } - - if(label.compare("b") == 0) sort(values.begin(),values.end(),descend); - else sort(values.begin(),values.end()); - - double max = values[events-1]; - binboundaries[nbins] = max; - - cout<<"-------------------------------------"<cd(); - TH2D* hNpart = new TH2D("hNpart","",nbins,binboundaries,500,0,500); - TH2D* hNcoll = new TH2D("hNcoll","",nbins,binboundaries,2000,0,2000); - TH2D* hNhard = new TH2D("hNhard","",nbins,binboundaries,250,0,250); - TH2D* hb = new TH2D("hb","",nbins,binboundaries,300,0,30); - - for(event.toBegin(); !event.atEnd(); ++event){ - edm::EventBase const & ev = event; - edm::Handle mc; - ev.getByLabel(edm::InputTag("heavyIon"),mc); - edm::Handle cent; - ev.getByLabel(edm::InputTag("hiCentrality"),cent); - - double b = mc->b(); - double npart = mc->Npart(); - double ncoll = mc->Ncoll(); - double nhard = mc->Nhard(); - - double hf = cent->EtHFhitSum(); - double hftp = cent->EtHFtowerSumPlus(); - double hftm = cent->EtHFtowerSumMinus(); - double eb = cent->EtEBSum(); - double eep = cent->EtEESumPlus(); - double eem = cent->EtEESumMinus(); - double etmr = cent->EtMidRapiditySum(); - double npix = cent->multiplicityPixel(); - - double parameter = 0; - - if(label.compare("npart") == 0) parameter = npart; - if(label.compare("ncoll") == 0) parameter = ncoll; - if(label.compare("nhard") == 0) parameter = nhard; - if(label.compare("b") == 0) parameter = b; - if(label.compare("hf") == 0) parameter = hf; - if(label.compare("hft") == 0) parameter = hftp + hftm; - if(label.compare("eb") == 0) parameter = eb; - if(label.compare("ee") == 0) parameter = eep+eem; - if(label.compare("etmr") == 0) parameter = etmr; - if(label.compare("npix") == 0) parameter = npix; - - hNpart->Fill(parameter,npart); - hNcoll->Fill(parameter,ncoll); - hNhard->Fill(parameter,nhard); - hb->Fill(parameter,b); - int bin = hNpart->GetXaxis()->FindBin(parameter) - 1; - if(bin < 0) bin = 0; - if(bin >= nbins) bin = nbins - 1; - nt->Fill(hf,bin,b,npart,ncoll,nhard); - } - - // Fitting Glauber distributions in bins to get mean and sigma values - - dir->cd(); - TF1* fGaus = new TF1("fb","gaus(0)",0,2); - fGaus->SetParameter(0,1); - fGaus->SetParameter(1,0.04); - fGaus->SetParameter(2,0.02); - - fitSlices(hNpart,fGaus); - fitSlices(hNcoll,fGaus); - fitSlices(hNhard,fGaus); - fitSlices(hb,fGaus); - - TH1D* hNpartMean = (TH1D*)gDirectory->Get("hNpart_1"); - TH1D* hNpartSigma = (TH1D*)gDirectory->Get("hNpart_2"); - TH1D* hNcollMean = (TH1D*)gDirectory->Get("hNcoll_1"); - TH1D* hNcollSigma = (TH1D*)gDirectory->Get("hNcoll_2"); - TH1D* hNhardMean = (TH1D*)gDirectory->Get("hNhard_1"); - TH1D* hNhardSigma = (TH1D*)gDirectory->Get("hNhard_2"); - TH1D* hbMean = (TH1D*)gDirectory->Get("hb_1"); - TH1D* hbSigma = (TH1D*)gDirectory->Get("hb_2"); - - cout<<"-------------------------------------"<table_[i].n_part_mean = hNpartMean->GetBinContent(ii); - bins->table_[i].n_part_var = hNpartSigma->GetBinContent(ii); - bins->table_[i].n_coll_mean = hNcollMean->GetBinContent(ii); - bins->table_[i].n_coll_var = hNcollSigma->GetBinContent(ii); - bins->table_[i].b_mean = hbMean->GetBinContent(ii); - bins->table_[i].b_var = hbSigma->GetBinContent(ii); - bins->table_[i].n_hard_mean = hNhardMean->GetBinContent(ii); - bins->table_[i].n_hard_var = hNhardSigma->GetBinContent(ii); - bins->table_[i].bin_edge = binboundaries[ii]; - - cout<GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <Delete(); - hNpartMean->Delete(); - hNpartSigma->Delete(); - hNcoll->Delete(); - hNcollMean->Delete(); - hNcollSigma->Delete(); - hNhard->Delete(); - hNhardMean->Delete(); - hNhardSigma->Delete(); - hb->Delete(); - hbMean->Delete(); - hbSigma->Delete(); - } - - // for(int i = 0; i < runnums.size(); ++i){ - CentralityBins* binsForRun = (CentralityBins*) bins->Clone(); - binsForRun->SetName(Form("run%d",1)); - // binsForRun->SetName(Form("run%d",runnums[i])); - binsForRun->Write(); - // } - nt->Write(); - bins->Delete(); - outFile->Write(); - -} - -void fitSlices(TH2* hCorr, TF1* func){ - - int nBins = hCorr->GetNbinsX(); - - TH1D* hMean = new TH1D(Form("%s_1",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - TH1D* hSigma = new TH1D(Form("%s_2",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - - for(int i = 0; i < nBins; ++i){ - TH1D* h = hCorr->ProjectionY(Form("%s_bin%d",hCorr->GetName(),i),i,i+1); - - func->SetParameter(0,h->GetMaximum()); - func->SetParameter(1,h->GetMean()); - func->SetParameter(2,h->GetRMS()); - - if(useFits) h->Fit(func); - - hMean->SetBinContent(i,func->GetParameter(1)); - hMean->SetBinError(i,func->GetParError(1)); - hSigma->SetBinContent(i,func->GetParameter(2)); - hSigma->SetBinError(i,func->GetParError(2)); - - if(onlySaveTable){ - h->Delete(); - } - } -} - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/makeMCtableFromPAT.C b/RecoHI/HiCentralityAlgos/tools/makeMCtableFromPAT.C deleted file mode 100644 index 548efcb72bc80..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/makeMCtableFromPAT.C +++ /dev/null @@ -1,308 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if !defined(__CINT__) && !defined(__MAKECINT__) - -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/FWLite/interface/Event.h" -#include "DataFormats/FWLite/interface/ChainEvent.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityBins.h" -#include "FWCore/Utilities/interface/InputTag.h" - -#include "DataFormats/CaloTowers/interface/CaloTower.h" -#include "DataFormats/HeavyIonEvent/interface/Centrality.h" -#include "SimDataFormats/HiGenData/interface/GenHIEvent.h" - -#endif - -void fitSlices(TH2*, TF1*); - -static bool ZS = false; -static bool useFits = false; -static bool onlySaveTable = false; -static const int nbinsMax = 40; - -using namespace std; -bool descend(float i,float j) { return (i infiles; - - infiles.push_back("dcache:/pnfs/cmsaf.mit.edu/t2bat/cms/store/himc/Fall10/AMPT_Default_MinBias_2760GeV/GEN-SIM-RECO/MC_38Y_V12-v1/0002/F8E134B2-77D6-DF11-BFE1-001B243DE10F.root"); - - fwlite::ChainEvent event(infiles); - // TFile* infile = new TFile("/net/hisrv0001/home/yetkin/pstore02/ana/Hydjet_MinBias_2760GeV_d20100305/Hydjet_MinBias_2760GeV_runs1to1000.root"); - // TFile* infile = new TFile("/net/hisrv0001/home/yetkin/pstore02/ana/Hydjet_MinBias_4TeV_d20100305/Hydjet_MinBias_4TeV_runs1to500.root"); - // fwlite::Event event(infile); - vector runnums; - - // Creating output table - TFile* outFile = new TFile("tables10binsHalfEvents.root","update"); - TDirectory* dir = outFile->mkdir(tag); - dir->cd(); - TNtuple* nt = new TNtuple("nt","","hf:bin:b:npart:ncoll:nhard"); - - TH1D::SetDefaultSumw2(); - CentralityBins* bins = new CentralityBins("noname","Test tag", nbins); - bins->table_.reserve(nbins); - - // Setting up variables & branches - double binboundaries[nbinsMax+1]; - vector values; - - bool binNpart = label.compare("Npart") == 0; - bool binNcoll = label.compare("Ncoll") == 0; - bool binNhard = label.compare("Nhard") == 0; - bool binB = label.compare("b") == 0; - bool binHF = label.compare("HFtowers") == 0; - bool binHFhit = label.compare("HFhits") == 0; - bool binEB = label.compare("EB") == 0; - bool binEE = label.compare("EE") == 0; - bool binETMR = label.compare("ETMR") == 0; - bool binNpix = label.compare("PixelHits") == 0; - bool binNtrks = label.compare("Ntracks") == 0; - - // Determining bins of cross section - // loop over events - unsigned int events=0; - for(event.toBegin(); !event.atEnd() && (maxEvents < 0 || events< maxEvents); ++event, ++events){ - edm::EventBase const & ev = event; - if( events % 100 == 0 ) cout<<"Processing event : "< mc; - ev.getByLabel(edm::InputTag("heavyIon"),mc); - edm::Handle cent; - ev.getByLabel(edm::InputTag("hiCentrality"),cent); - - double b = mc->b(); - double npart = mc->Npart(); - double ncoll = mc->Ncoll(); - double nhard = mc->Nhard(); - - double hf = cent->EtHFtowerSum(); - double hfhit = cent->EtHFhitSum(); - double eb = cent->EtEBSum(); - double eep = cent->EtEESumPlus(); - double eem = cent->EtEESumMinus(); - double ee = cent->EtEESum(); - double etmr = cent->EtMidRapiditySum(); - double npix = cent->multiplicityPixel(); - double ntrks = cent->Ntracks(); - - double parameter = 0; - if(binNpart) parameter = npart; - if(binNcoll) parameter = ncoll; - if(binNhard) parameter = nhard; - if(binB) parameter = b; - if(binHF) parameter = hf; - if(binHFhit) parameter = hfhit; - if(binEB) parameter = eb; - if(binEE) parameter = ee; - if(binETMR) parameter = etmr; - if(binNpix) parameter = npix; - if(binNtrks) parameter = ntrks; - - values.push_back(parameter); - - int run = event.id().run(); - if(runnums.size() == 0 || runnums[runnums.size()-1] != run) runnums.push_back(run); - } - - if(label.compare("b") == 0) sort(values.begin(),values.end(),descend); - else sort(values.begin(),values.end()); - - double max = values[events-1]; - binboundaries[nbins] = max; - - cout<<"-------------------------------------"<cd(); - TH2D* hNpart = new TH2D("hNpart","",nbins,binboundaries,500,0,500); - TH2D* hNcoll = new TH2D("hNcoll","",nbins,binboundaries,2000,0,2000); - TH2D* hNhard = new TH2D("hNhard","",nbins,binboundaries,250,0,250); - TH2D* hb = new TH2D("hb","",nbins,binboundaries,300,0,30); - - for(event.toBegin(); !event.atEnd(); ++event){ - edm::EventBase const & ev = event; - edm::Handle mc; - ev.getByLabel(edm::InputTag("heavyIon"),mc); - edm::Handle cent; - ev.getByLabel(edm::InputTag("hiCentrality"),cent); - - double b = mc->b(); - double npart = mc->Npart(); - double ncoll = mc->Ncoll(); - double nhard = mc->Nhard(); - - double hf = cent->EtHFtowerSum(); - double hfhit = cent->EtHFhitSum(); - double eb = cent->EtEBSum(); - double eep = cent->EtEESumPlus(); - double eem = cent->EtEESumMinus(); - double ee = cent->EtEESum(); - double etmr = cent->EtMidRapiditySum(); - double npix = cent->multiplicityPixel(); - double ntrks = cent->Ntracks(); - - double parameter = 0; - if(binNpart) parameter = npart; - if(binNcoll) parameter = ncoll; - if(binNhard) parameter = nhard; - if(binB) parameter = b; - if(binHF) parameter = hf; - if(binHFhit) parameter = hfhit; - if(binEB) parameter = eb; - if(binEE) parameter = ee; - if(binETMR) parameter = etmr; - if(binNpix) parameter = npix; - if(binNtrks) parameter = ntrks; - - hNpart->Fill(parameter,npart); - hNcoll->Fill(parameter,ncoll); - hNhard->Fill(parameter,nhard); - hb->Fill(parameter,b); - int bin = hNpart->GetXaxis()->FindBin(parameter) - 1; - if(bin < 0) bin = 0; - if(bin >= nbins) bin = nbins - 1; - nt->Fill(hf,bin,b,npart,ncoll,nhard); - } - - // Fitting Glauber distributions in bins to get mean and sigma values - - dir->cd(); - TF1* fGaus = new TF1("fb","gaus(0)",0,2); - fGaus->SetParameter(0,1); - fGaus->SetParameter(1,0.04); - fGaus->SetParameter(2,0.02); - - fitSlices(hNpart,fGaus); - fitSlices(hNcoll,fGaus); - fitSlices(hNhard,fGaus); - fitSlices(hb,fGaus); - - TH1D* hNpartMean = (TH1D*)gDirectory->Get("hNpart_1"); - TH1D* hNpartSigma = (TH1D*)gDirectory->Get("hNpart_2"); - TH1D* hNcollMean = (TH1D*)gDirectory->Get("hNcoll_1"); - TH1D* hNcollSigma = (TH1D*)gDirectory->Get("hNcoll_2"); - TH1D* hNhardMean = (TH1D*)gDirectory->Get("hNhard_1"); - TH1D* hNhardSigma = (TH1D*)gDirectory->Get("hNhard_2"); - TH1D* hbMean = (TH1D*)gDirectory->Get("hb_1"); - TH1D* hbSigma = (TH1D*)gDirectory->Get("hb_2"); - - cout<<"-------------------------------------"<table_[i].n_part_mean = hNpartMean->GetBinContent(ii); - bins->table_[i].n_part_var = hNpartSigma->GetBinContent(ii); - bins->table_[i].n_coll_mean = hNcollMean->GetBinContent(ii); - bins->table_[i].n_coll_var = hNcollSigma->GetBinContent(ii); - bins->table_[i].b_mean = hbMean->GetBinContent(ii); - bins->table_[i].b_var = hbSigma->GetBinContent(ii); - bins->table_[i].n_hard_mean = hNhardMean->GetBinContent(ii); - bins->table_[i].n_hard_var = hNhardSigma->GetBinContent(ii); - bins->table_[i].bin_edge = binboundaries[ii]; - - cout<GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <Delete(); - hNpartMean->Delete(); - hNpartSigma->Delete(); - hNcoll->Delete(); - hNcollMean->Delete(); - hNcollSigma->Delete(); - hNhard->Delete(); - hNhardMean->Delete(); - hNhardSigma->Delete(); - hb->Delete(); - hbMean->Delete(); - hbSigma->Delete(); - } - - // for(int i = 0; i < runnums.size(); ++i){ - CentralityBins* binsForRun = (CentralityBins*) bins->Clone(); - binsForRun->SetName(Form("run%d",1)); - // binsForRun->SetName(Form("run%d",runnums[i])); - binsForRun->Write(); - // } - nt->Write(); - bins->Delete(); - outFile->Write(); - -} - -void fitSlices(TH2* hCorr, TF1* func){ - - int nBins = hCorr->GetNbinsX(); - - TH1D* hMean = new TH1D(Form("%s_1",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - TH1D* hSigma = new TH1D(Form("%s_2",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - - for(int i = 1; i < nBins+1; ++i){ - int bin = nBins - i; - TH1D* h = hCorr->ProjectionY(Form("%s_bin%d",hCorr->GetName(),bin),i,i); - - func->SetParameter(0,h->GetMaximum()); - func->SetParameter(1,h->GetMean()); - func->SetParameter(2,h->GetRMS()); - - if(useFits) h->Fit(func); - - hMean->SetBinContent(i,func->GetParameter(1)); - hMean->SetBinError(i,func->GetParError(1)); - hSigma->SetBinContent(i,func->GetParameter(2)); - hSigma->SetBinError(i,func->GetParError(2)); - - if(onlySaveTable){ - h->Delete(); - } - } -} - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/makeTFileFromDB.py b/RecoHI/HiCentralityAlgos/tools/makeTFileFromDB.py deleted file mode 100644 index 5566a5ef4f5b1..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/makeTFileFromDB.py +++ /dev/null @@ -1,47 +0,0 @@ -import FWCore.ParameterSet.VarParsing as VarParsing - -ivars = VarParsing.VarParsing('standard') -ivars.files = 'dcache:/pnfs/cmsaf.mit.edu/t2bat/cms/store/user/yetkin/sim/CMSSW_3_3_5/Pythia_MinBias_D6T_900GeV_d20091208/Vertex1207/Pythia_MinBias_D6T_900GeV_d20091208_000005.root' - -ivars.output = 'bambu.root' -ivars.maxEvents = -1 - -ivars.parseArguments() - -import FWCore.ParameterSet.Config as cms - -process = cms.Process('DUMMY') - -process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') -process.GlobalTag.globaltag = 'MC_38Y_V13::All' - -process.maxEvents = cms.untracked.PSet(input = cms.untracked.int32(13)) -process.source = cms.Source("EmptyIOVSource", - timetype = cms.string("runnumber"), - firstValue = cms.uint64(1), - lastValue = cms.uint64(3), - interval = cms.uint64(3) - ) - -process.TFileService = cms.Service('TFileService', - fileName = cms.string('centralityfile.root') - ) - -process.HeavyIonGlobalParameters = cms.PSet( - centralityVariable = cms.string("HFhits"), - nonDefaultGlauberModel = cms.string("AMPT_2760GeV"), - centralitySrc = cms.InputTag("hiCentrality") - ) - -process.makeCentralityTableTFile = cms.EDAnalyzer('CentralityTableProducer', - isMC = cms.untracked.bool(True), - makeDBFromTFile = cms.untracked.bool(False), - makeTFileFromDB = cms.untracked.bool(True) - ) - -process.step = cms.Path(process.makeCentralityTableTFile) - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/makeTFileFromText.C b/RecoHI/HiCentralityAlgos/tools/makeTFileFromText.C deleted file mode 100644 index e21d3f1cfafd0..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/makeTFileFromText.C +++ /dev/null @@ -1,45 +0,0 @@ -#include "TFile.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityBins.h" -#include -#include -#include - -using namespace std; - -void makeTFileFromText(char* fname = "bins20_4TeV_CMSSW_3_5_2.root", char* tag = "tag", int nbins = 20){ - - TFile * outf = new TFile(fname,"update"); - TDirectoryFile* dir = (TDirectoryFile*)outf->mkdir(tag); - CentralityBins* bins = new CentralityBins("HFhitBins","Test tag", nbins); - bins->table_.reserve(nbins); - - string file = "./bins20_4TeV_CMSSW_3_5_2.txt"; - ifstream in( file.c_str() ); - string line; - - int i = 0; - while ( getline( in, line ) ) { - if ( !line.size() || line[0]=='#' ) { continue; } - istringstream ss(line); - string binLabel; - ss>>binLabel - >>bins->table_[i].n_part_mean - >>bins->table_[i].n_part_var - >>bins->table_[i].n_coll_mean - >>bins->table_[i].n_coll_var - >>bins->table_[i].b_mean - >>bins->table_[i].b_var - >>bins->table_[i].bin_edge; - bins->table_[i].n_hard_mean = 0; - bins->table_[i].n_hard_var = 0; - - i++; - } - - bins->Write(); - outf->Write(); - -} - - - diff --git a/RecoHI/HiCentralityAlgos/tools/makeTable.C b/RecoHI/HiCentralityAlgos/tools/makeTable.C deleted file mode 100644 index b47e65ef72bdf..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/makeTable.C +++ /dev/null @@ -1,330 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if !defined(__CINT__) && !defined(__MAKECINT__) -#include "DataFormats/HeavyIonEvent/interface/CentralityBins.h" -#endif - -void fitSlices(TH2*, TF1*); - -static bool ZS = false; -static bool useFits = false; -static bool onlySaveTable = false; -static const int nbinsMax = 40; - -using namespace std; -bool descend(float i,float j) { return (i runnums; - - // const char* infileName = Form("/net/hisrv0001/home/yetkin/hidsk0001/analysis/prod/%s_RECO_391/test.root",dataset); - const char* infileName = Form("/net/hisrv0001/home/yetkin/hidsk0001/centrality/prod/%s/test.root",dataset); - - // TFile* infile = new TFile(infileName,"read"); - TChain* t = new TChain("HltTree"); - // TChain* t = new TChain("hltanalysis/HltTree"); - - t->Add(infileName); - - // Creating output table - TFile* outFile = new TFile("tables_d1108.root","update"); - TDirectory* dir = outFile->mkdir(tag); - dir->cd(); - TNtuple* nt = new TNtuple("nt","","hf:bin:b:npart:ncoll:nhard"); - CentralityBins* bins = new CentralityBins("noname","Test tag", nbins); - bins->table_.reserve(nbins); - - TH1D::SetDefaultSumw2(); - - int runMC = 1; - TFile * inputMCfile; - CentralityBins* inputMCtable; - - if(DATA){ - inputMCfile = new TFile("tables_d1103.root","read"); - inputMCtable = (CentralityBins*)inputMCfile->Get("CentralityTable_HFhits40_AMPT2760GeV_v1_mc_MC_38Y_V12/run1"); - } - - // Setting up variables & branches - double binboundaries[nbinsMax+1]; - vector values; - - float b,npart,ncoll,nhard,hf,hfhit,eb,ee,etmr,parameter; - int npix,ntrks; - // TTree* t = (TTree*)infile->Get("HltTree"); - int run; - - if(SIM){ - t->SetBranchAddress("b",&b); - t->SetBranchAddress("Npart",&npart); - t->SetBranchAddress("Ncoll",&ncoll); - t->SetBranchAddress("Nhard",&nhard); - } - - t->SetBranchAddress("hiHFhit",&hfhit); - t->SetBranchAddress("hiHF",&hf); - t->SetBranchAddress("hiEB",&eb); - t->SetBranchAddress("hiEE",&ee); - t->SetBranchAddress("hiET",&etmr); - t->SetBranchAddress("hiNpix",&npix); - t->SetBranchAddress("hiNtracks",&ntrks); - t->SetBranchAddress("Run",&run); - - bool binNpart = label.compare("Npart") == 0; - bool binNcoll = label.compare("Ncoll") == 0; - bool binNhard = label.compare("Nhard") == 0; - bool binB = label.compare("b") == 0; - bool binHF = label.compare("HFtowers") == 0; - bool binHFhit = label.compare("HFhits") == 0; - bool binEB = label.compare("EB") == 0; - bool binEE = label.compare("EE") == 0; - bool binETMR = label.compare("ETMR") == 0; - bool binNpix = label.compare("PixelHits") == 0; - bool binNtrks = label.compare("Ntracks") == 0; - - // Determining bins of cross section - // loop over events - unsigned int events=t->GetEntries(); - for(unsigned int iev = 0; iev < events && (maxEvents < 0 || iev< maxEvents); ++iev){ - if( iev % 100 == 0 ) cout<<"Processing event : "<GetEntry(iev); - - if(binNpart) parameter = npart; - if(binNcoll) parameter = ncoll; - if(binNhard) parameter = nhard; - if(binB) parameter = b; - if(binHF) parameter = hf; - if(binHFhit) parameter = hfhit; - if(binEB) parameter = eb; - if(binEE) parameter = ee; - if(binETMR) parameter = etmr; - if(binNpix) parameter = npix; - if(binNtrks) parameter = ntrks; - - values.push_back(parameter); - if(runnums.size() == 0 || runnums[runnums.size()-1] != run) runnums.push_back(run); - } - - if(label.compare("b") == 0) sort(values.begin(),values.end(),descend); - else sort(values.begin(),values.end()); - - double max = values[events-1]; - binboundaries[nbins] = max; - - cout<<"-------------------------------------"<cd(); - TH2D* hNpart = new TH2D("hNpart","",nbins,binboundaries,500,0,500); - TH2D* hNcoll = new TH2D("hNcoll","",nbins,binboundaries,2000,0,2000); - TH2D* hNhard = new TH2D("hNhard","",nbins,binboundaries,250,0,250); - TH2D* hb = new TH2D("hb","",nbins,binboundaries,300,0,30); - - for(unsigned int iev = 0; iev < events && (maxEvents < 0 || iev< maxEvents); ++iev){ - if( iev % 100 == 0 ) cout<<"Processing event : "<GetEntry(iev); - if(binNpart) parameter = npart; - if(binNcoll) parameter = ncoll; - if(binNhard) parameter = nhard; - if(binB) parameter = b; - if(binHF) parameter = hf; - if(binHFhit) parameter = hfhit; - if(binEB) parameter = eb; - if(binEE) parameter = ee; - if(binETMR) parameter = etmr; - if(binNpix) parameter = npix; - if(binNtrks) parameter = ntrks; - - hNpart->Fill(parameter,npart); - hNcoll->Fill(parameter,ncoll); - hNhard->Fill(parameter,nhard); - hb->Fill(parameter,b); - int bin = hNpart->GetXaxis()->FindBin(parameter) - 1; - if(bin < 0) bin = 0; - if(bin >= nbins) bin = nbins - 1; - nt->Fill(hf,bin,b,npart,ncoll,nhard); - } - - // Fitting Glauber distributions in bins to get mean and sigma values - - dir->cd(); - TF1* fGaus = new TF1("fb","gaus(0)",0,2); - fGaus->SetParameter(0,1); - fGaus->SetParameter(1,0.04); - fGaus->SetParameter(2,0.02); - - fitSlices(hNpart,fGaus); - fitSlices(hNcoll,fGaus); - fitSlices(hNhard,fGaus); - fitSlices(hb,fGaus); - - TH1D* hNpartMean = (TH1D*)gDirectory->Get("hNpart_1"); - TH1D* hNpartSigma = (TH1D*)gDirectory->Get("hNpart_2"); - TH1D* hNcollMean = (TH1D*)gDirectory->Get("hNcoll_1"); - TH1D* hNcollSigma = (TH1D*)gDirectory->Get("hNcoll_2"); - TH1D* hNhardMean = (TH1D*)gDirectory->Get("hNhard_1"); - TH1D* hNhardSigma = (TH1D*)gDirectory->Get("hNhard_2"); - TH1D* hbMean = (TH1D*)gDirectory->Get("hb_1"); - TH1D* hbSigma = (TH1D*)gDirectory->Get("hb_2"); - - cout<<"-------------------------------------"<table_[i].n_part_mean = hNpartMean->GetBinContent(ii); - bins->table_[i].n_part_var = hNpartSigma->GetBinContent(ii); - bins->table_[i].n_coll_mean = hNcollMean->GetBinContent(ii); - bins->table_[i].n_coll_var = hNcollSigma->GetBinContent(ii); - bins->table_[i].b_mean = hbMean->GetBinContent(ii); - bins->table_[i].b_var = hbSigma->GetBinContent(ii); - bins->table_[i].n_hard_mean = hNhardMean->GetBinContent(ii); - bins->table_[i].n_hard_var = hNhardSigma->GetBinContent(ii); - bins->table_[i].bin_edge = binboundaries[ii-1]; - - cout<GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <GetBinContent(ii)<<" " - <Delete(); - hNpartMean->Delete(); - hNpartSigma->Delete(); - hNcoll->Delete(); - hNcollMean->Delete(); - hNcollSigma->Delete(); - hNhard->Delete(); - hNhardMean->Delete(); - hNhardSigma->Delete(); - hb->Delete(); - hbMean->Delete(); - hbSigma->Delete(); - } - - }else{ - cout<<"-------------------------------------"<table_[i].n_part_mean = inputMCtable->NpartMeanOfBin(i); - bins->table_[i].n_part_var = inputMCtable->NpartSigmaOfBin(i); - bins->table_[i].n_coll_mean = inputMCtable->NcollMeanOfBin(i); - bins->table_[i].n_coll_var = inputMCtable->NcollSigmaOfBin(i); - bins->table_[i].b_mean = inputMCtable->bMeanOfBin(i); - bins->table_[i].b_var = inputMCtable->bSigmaOfBin(i); - bins->table_[i].n_hard_mean = inputMCtable->NhardMeanOfBin(i); - bins->table_[i].n_hard_var = inputMCtable->NhardSigmaOfBin(i); - bins->table_[i].bin_edge = binboundaries[ii-1]; - - cout<table_[i].n_part_mean<<" " - <table_[i].n_part_var<<" " - <table_[i].n_coll_mean<<" " - <table_[i].n_coll_var<<" " - <table_[i].b_mean<<" " - <table_[i].b_var<<" " - <table_[i].n_hard_mean<<" " - <table_[i].n_hard_var<<" " - <table_[i].bin_edge<<" "<cd(); - dir->cd(); - - bins->SetName(Form("run%d",1)); - bins->Write(); - nt->Write(); - bins->Delete(); - outFile->Write(); - -} - -void fitSlices(TH2* hCorr, TF1* func){ - - int nBins = hCorr->GetNbinsX(); - - TH1D* hMean = new TH1D(Form("%s_1",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - TH1D* hSigma = new TH1D(Form("%s_2",hCorr->GetName()),"",nBins,hCorr->GetXaxis()->GetXmin(),hCorr->GetXaxis()->GetXmax()); - - for(int i = 1; i < nBins+1; ++i){ - int bin = nBins - i; - TH1D* h = hCorr->ProjectionY(Form("%s_bin%d",hCorr->GetName(),bin),i,i); - - func->SetParameter(0,h->GetMaximum()); - func->SetParameter(1,h->GetMean()); - func->SetParameter(2,h->GetRMS()); - - if(useFits) h->Fit(func); - - hMean->SetBinContent(i,func->GetParameter(1)); - hMean->SetBinError(i,func->GetParError(1)); - hSigma->SetBinContent(i,func->GetParameter(2)); - hSigma->SetBinError(i,func->GetParError(2)); - - if(onlySaveTable){ - h->Delete(); - } - } -} - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/publishTables.sh b/RecoHI/HiCentralityAlgos/tools/publishTables.sh deleted file mode 100755 index ce9c2202049b6..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/publishTables.sh +++ /dev/null @@ -1,57 +0,0 @@ - -datadir=$CMSSW_BASE/src/RecoHI/HiCentralityAlgos/data - -input=../data/CentralityTables.root -output=$datadir/CentralityTables.db - -for tag in \ -HFhits40_MC_Hydjet4TeV_MC_3XY_V24_v0 \ -EEbcs40_MC_Hydjet4TeV_MC_3XY_V24_v0 \ -HFhits20_MC_Hydjet4TeV_MC_3XY_V24_v0 \ -EEbcs20_MC_Hydjet4TeV_MC_3XY_V24_v0 \ -HFhits10_MC_Hydjet4TeV_MC_3XY_V24_v0 \ -EEbcs10_MC_Hydjet4TeV_MC_3XY_V24_v0 \ -HFhits5_MC_Hydjet4TeV_MC_3XY_V24_v0 \ -EEbcs5_MC_Hydjet4TeV_MC_3XY_V24_v0 \ -HFhits40_MC_Hydjet2760GeV_MC_3XY_V24_v0 \ -EEbcs40_MC_Hydjet2760GeV_MC_3XY_V24_v0 \ -HFhits20_MC_Hydjet2760GeV_MC_3XY_V24_v0 \ -EEbcs20_MC_Hydjet2760GeV_MC_3XY_V24_v0 \ -HFhits10_MC_Hydjet2760GeV_MC_3XY_V24_v0 \ -EEbcs10_MC_Hydjet2760GeV_MC_3XY_V24_v0 \ -HFhits5_MC_Hydjet2760GeV_MC_3XY_V24_v0 \ -EEbcs5_MC_Hydjet2760GeV_MC_3XY_V24_v0 \ -HFhits40_MC_Hydjet2760GeV_MC_3XY_V24_NoZS_v0 \ -EEbcs40_MC_Hydjet2760GeV_MC_3XY_V24_NoZS_v0 \ -HFhits20_MC_Hydjet2760GeV_MC_3XY_V24_NoZS_v0 \ -EEbcs20_MC_Hydjet2760GeV_MC_3XY_V24_NoZS_v0 \ -HFhits10_MC_Hydjet2760GeV_MC_3XY_V24_NoZS_v0 \ -EEbcs10_MC_Hydjet2760GeV_MC_3XY_V24_NoZS_v0 \ -HFhits5_MC_Hydjet2760GeV_MC_3XY_V24_NoZS_v0 \ -EEbcs5_MC_Hydjet2760GeV_MC_3XY_V24_NoZS_v0 \ -HFhits40_MC_AMPT2760GeV_MC_3XY_V24_v0 \ -EEbcs40_MC_AMPT2760GeV_MC_3XY_V24_v0 \ -HFhits20_MC_AMPT2760GeV_MC_3XY_V24_v0 \ -EEbcs20_MC_AMPT2760GeV_MC_3XY_V24_v0 \ -HFhits10_MC_AMPT2760GeV_MC_3XY_V24_v0 \ -EEbcs10_MC_AMPT2760GeV_MC_3XY_V24_v0 \ -HFhits5_MC_AMPT2760GeV_MC_3XY_V24_v0 \ -EEbcs5_MC_AMPT2760GeV_MC_3XY_V24_v0 \ -HFhits40_MC_AMPT2760GeV_MC_3XY_V25_NoZS_v0 \ -EEbcs40_MC_AMPT2760GeV_MC_3XY_V25_NoZS_v0 \ -HFhits20_MC_AMPT2760GeV_MC_3XY_V25_NoZS_v0 \ -EEbcs20_MC_AMPT2760GeV_MC_3XY_V25_NoZS_v0 \ -HFhits10_MC_AMPT2760GeV_MC_3XY_V25_NoZS_v0 \ -EEbcs10_MC_AMPT2760GeV_MC_3XY_V25_NoZS_v0 \ -HFhits5_MC_AMPT2760GeV_MC_3XY_V25_NoZS_v0 \ -EEbcs5_MC_AMPT2760GeV_MC_3XY_V25_NoZS_v0 -do -cmsRun makeDBFromTFile.py outputTag=$tag inputFile=$input outputFile=$output -done - - - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/pushHistogramIntoFile.C b/RecoHI/HiCentralityAlgos/tools/pushHistogramIntoFile.C deleted file mode 100644 index f308d5981ff42..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/pushHistogramIntoFile.C +++ /dev/null @@ -1,14 +0,0 @@ - -void pushHistogramIntoFile(const char* tag){ - - // const char* tag = "HFhits40_MC_Hydjet4TeV_MC_3XY_V24_v0"; - TFile* file1 = new TFile("efficiency.root","read"); - TFile* file2 = new TFile("../data/CentralityTables.root","update"); - file2->cd(tag); - - TH1D* h = (TH1D*)file1->Get("hEff"); - h->Write(); - file2->Write(); - -} - diff --git a/RecoHI/HiCentralityAlgos/tools/rootlogon.C b/RecoHI/HiCentralityAlgos/tools/rootlogon.C deleted file mode 100644 index fee48a83e91f2..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/rootlogon.C +++ /dev/null @@ -1,11 +0,0 @@ -{ - gSystem->Load( "libFWCoreFWLite" ); - gSystem->Load("libDataFormatsFWLite"); - gSystem->Load("libDataFormatsCommon"); - gSystem->Load("libDataFormatsCaloTowers"); - gSystem->Load("libDataFormatsHeavyIonEvent"); - gSystem->Load("libSimDataFormatsHiGenData"); - gSystem->AddIncludePath("-I$CMSSW_BASE/src/"); - gSystem->AddIncludePath("-I$CMSSW_RELEASE_BASE/src/"); - AutoLibraryLoader::enable(); -} diff --git a/RecoHI/HiCentralityAlgos/tools/run.sh b/RecoHI/HiCentralityAlgos/tools/run.sh deleted file mode 100755 index fd3047e1a63f4..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/run.sh +++ /dev/null @@ -1,31 +0,0 @@ - -datadir=$CMSSW_BASE/src/RecoHI/HiCentralityAlgos/data - -rm tables.root -rm $datadir/Cen*.* - -root -b -q makeCentralityTable.C+'(40,"hf", "HFhits40_MC_Hydjet4TeV_MC_3XY_V24_v0")' -root -b -q makeCentralityTable.C+'(40,"ee", "EEbcs40_MC_Hydjet4TeV_MC_3XY_V24_v0")' -root -b -q makeCentralityTable.C+'(20,"hf", "HFhits20_MC_Hydjet4TeV_MC_3XY_V24_v0")' -root -b -q makeCentralityTable.C+'(20,"ee", "EEbcs20_MC_Hydjet4TeV_MC_3XY_V24_v0")' -root -b -q makeCentralityTable.C+'(10,"hf", "HFhits10_MC_Hydjet4TeV_MC_3XY_V24_v0")' -root -b -q makeCentralityTable.C+'(10,"ee", "EEbcs10_MC_Hydjet4TeV_MC_3XY_V24_v0")' -root -b -q makeCentralityTable.C+'(5,"hf", "HFhits5_MC_Hydjet4TeV_MC_3XY_V24_v0")' -root -b -q makeCentralityTable.C+'(5,"ee", "EEbcs5_MC_Hydjet4TeV_MC_3XY_V24_v0")' - -mv tables.root $datadir/CentralityTables.root - -cmsRun makeDBFromTFile.py outputTag="HFhits40_MC_Hydjet4TeV_MC_3XY_V24_v0" inputFile=$datadir/CentralityTables.root outputFile=$datadir/CentralityTables.db -cmsRun makeDBFromTFile.py outputTag="EEbcs40_MC_Hydjet4TeV_MC_3XY_V24_v0" inputFile=$datadir/CentralityTables.root outputFile=$datadir/CentralityTables.db -cmsRun makeDBFromTFile.py outputTag="HFhits20_MC_Hydjet4TeV_MC_3XY_V24_v0" inputFile=$datadir/CentralityTables.root outputFile=$datadir/CentralityTables.db -cmsRun makeDBFromTFile.py outputTag="EEbcs20_MC_Hydjet4TeV_MC_3XY_V24_v0" inputFile=$datadir/CentralityTables.root outputFile=$datadir/CentralityTables.db -cmsRun makeDBFromTFile.py outputTag="HFhits10_MC_Hydjet4TeV_MC_3XY_V24_v0" inputFile=$datadir/CentralityTables.root outputFile=$datadir/CentralityTables.db -cmsRun makeDBFromTFile.py outputTag="EEbcs10_MC_Hydjet4TeV_MC_3XY_V24_v0" inputFile=$datadir/CentralityTables.root outputFile=$datadir/CentralityTables.db -cmsRun makeDBFromTFile.py outputTag="HFhits5_MC_Hydjet4TeV_MC_3XY_V24_v0" inputFile=$datadir/CentralityTables.root outputFile=$datadir/CentralityTables.db -cmsRun makeDBFromTFile.py outputTag="EEbcs5_MC_Hydjet4TeV_MC_3XY_V24_v0" inputFile=$datadir/CentralityTables.root outputFile=$datadir/CentralityTables.db - - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/runData.sh b/RecoHI/HiCentralityAlgos/tools/runData.sh deleted file mode 100755 index fc6e7fec961ce..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/runData.sh +++ /dev/null @@ -1,20 +0,0 @@ - -datadir=../data - -cp $CMSSW_BASE/src/CmsHi/JulyExercise/data/CentralityTables.root $datadir/ - -####eff=90.2 -for binning in 40 20 10 5 -do - root -b -q makeDataCentralityTable.C+\(${binning},\"hf\",\"HFhits${binning}_DataJulyExercise_Hydjet2760GeV_MC_37Y_V5_NZS_v0\",\"HFhits${binning}_MC_Hydjet2760GeV_MC_3XY_V24_v0\",1\) -done - - - - - - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/runMC.sh b/RecoHI/HiCentralityAlgos/tools/runMC.sh deleted file mode 100755 index 90b122e3a190c..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/runMC.sh +++ /dev/null @@ -1,34 +0,0 @@ - -datadir=../data -rm $datadir/Cen*.* - -cp ~/cvs/UserCode/CmsHi/JulyExercise/data/CentralityTables.root ./tables.root - -root -b -q makeMCCentralityTable.C+'(40,"hf", "HFhits40_MC_AMPT2760GeV_MC_37Y_V5_v0")' -root -b -q makeMCCentralityTable.C+'(20,"hf", "HFhits20_MC_AMPT2760GeV_MC_37Y_V5_v0")' -root -b -q makeMCCentralityTable.C+'(10,"hf", "HFhits10_MC_AMPT2760GeV_MC_37Y_V5_v0")' -root -b -q makeMCCentralityTable.C+'(5,"hf", "HFhits5_MC_AMPT2760GeV_MC_37Y_V5_v0")' -root -b -q makeMCCentralityTable.C+'(1,"hf", "HFhits1_MC_AMPT2760GeV_MC_37Y_V5_v0")' - -#root -b -q makeMCCentralityTable.C+'(40,"etmr", "ETmidRap40_MC_AMPT2760GeV_MC_37Y_V5_v0")' -#root -b -q makeMCCentralityTable.C+'(20,"etmr", "ETmidRap20_MC_AMPT2760GeV_MC_37Y_V5_v0")' -#root -b -q makeMCCentralityTable.C+'(10,"etmr", "ETmidRap10_MC_AMPT2760GeV_MC_37Y_V5_v0")' -#root -b -q makeMCCentralityTable.C+'(5,"etmr", "ETmidRap5_MC_AMPT2760GeV_MC_37Y_V5_v0")' -#root -b -q makeMCCentralityTable.C+'(1,"etmr", "ETmidRap1_MC_AMPT2760GeV_MC_37Y_V5_v0")' - -root -b -q makeMCCentralityTable.C+'(40,"npix", "PixelNhits40_MC_AMPT2760GeV_MC_37Y_V5_v0")' -root -b -q makeMCCentralityTable.C+'(20,"npix", "PixelNhits20_MC_AMPT2760GeV_MC_37Y_V5_v0")' -root -b -q makeMCCentralityTable.C+'(10,"npix", "PixelNhits10_MC_AMPT2760GeV_MC_37Y_V5_v0")' -root -b -q makeMCCentralityTable.C+'(5,"npix", "PixelNhits5_MC_AMPT2760GeV_MC_37Y_V5_v0")' -root -b -q makeMCCentralityTable.C+'(1,"npix", "PixelNhits1_MC_AMPT2760GeV_MC_37Y_V5_v0")' - -mv tables.root $datadir/CentralityTables.root - -#root -b -q pushHistogramIntoFile.C'("HFhits40_MC_Hydjet4TeV_MC_3XY_V24_v0")' - - - - - - - diff --git a/RecoHI/HiCentralityAlgos/tools/runTestDB.py b/RecoHI/HiCentralityAlgos/tools/runTestDB.py deleted file mode 100644 index 6466fa5d48dc9..0000000000000 --- a/RecoHI/HiCentralityAlgos/tools/runTestDB.py +++ /dev/null @@ -1,83 +0,0 @@ -import FWCore.ParameterSet.VarParsing as VarParsing - -ivars = VarParsing.VarParsing('standard') - -ivars.register ('outputTag', - mult=ivars.multiplicity.singleton, - mytype=ivars.varType.string, - info="for testing") -ivars.outputTag="HFhits40_MC_Hydjet2760GeV_MC_3XY_V24_v0" - -ivars.register ('inputFile', - mult=ivars.multiplicity.singleton, - mytype=ivars.varType.string, - info="for testing") - -ivars.register ('outputFile', - mult=ivars.multiplicity.singleton, - mytype=ivars.varType.string, - info="for testing") - -ivars.inputFile="../data/CentralityTables.root" -ivars.outputFile="Test.db" - -ivars.parseArguments() - -hiRecord = 'HeavyIonRcd' - -import FWCore.ParameterSet.Config as cms - -process = cms.Process('DUMMY') - -process.maxEvents = cms.untracked.PSet(input = cms.untracked.int32(-1)) - -process.MessageLogger = cms.Service("MessageLogger", - cout = cms.untracked.PSet( - threshold = cms.untracked.string('INFO') - ), - destinations = cms.untracked.vstring('cout') - ) - -process.source = cms.Source("EmptyIOVSource", - timetype = cms.string("runnumber"), - firstValue = cms.uint64(1), - lastValue = cms.uint64(1), - interval = cms.uint64(1) - ) - - -process.makeCentralityTableDB = cms.EDAnalyzer('CentralityPopConProducer', - Source = cms.PSet(makeDBFromTFile = cms.untracked.bool(True), - inputFile = cms.string(ivars.inputFile), - rootTag = cms.string(ivars.outputTag) - ), - record = cms.string(hiRecord), - name= cms.untracked.string(ivars.outputTag), - loggingOn = cms.untracked.bool(True) - ) - -process.load("CondCore.DBCommon.CondDBCommon_cfi") -process.CondDBCommon.connect = "oracle://cms_orcoff_prep/CMS_COND_PHYSICSTOOLS" -process.CondDBCommon.DBParameters.messageLevel = cms.untracked.int32(3) -process.CondDBCommon.DBParameters.authenticationPath = "authPath" - -process.PoolDBOutputService = cms.Service("PoolDBOutputService", - process.CondDBCommon, - logconnect = cms.untracked.string("sqlite_file:" + "LogsTest.db"), - timetype = cms.untracked.string("runnumber"), - toPut = cms.VPSet(cms.PSet(record = cms.string(hiRecord), - tag = cms.string(ivars.outputTag) - ) - ) - ) - - - - -process.step = cms.Path(process.makeCentralityTableDB) - - - - - - diff --git a/RecoHI/HiEgammaAlgos/interface/CxCalculator.h b/RecoHI/HiEgammaAlgos/interface/CxCalculator.h deleted file mode 100755 index 4e0293effac5a..0000000000000 --- a/RecoHI/HiEgammaAlgos/interface/CxCalculator.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef CxCalculator_h -#define CxCalculator_h - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/ESHandle.h" - -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/InputTag.h" - -#include "DataFormats/EgammaReco/interface/BasicClusterFwd.h" -#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" - -#include "Geometry/CaloGeometry/interface/CaloGeometry.h" -#include "Geometry/Records/interface/IdealGeometryRecord.h" - - -class CxCalculator -{ - public: - - CxCalculator(const edm::Event &iEvent, const edm::EventSetup &iSetup,const edm::InputTag& barrelLabel,const edm::InputTag& endcapLabel) ; - - double getJurassicArea( double r1, double r2, double width) ; - double getBCMax(const reco::SuperClusterRef clus,int i); - double getCx(const reco::SuperClusterRef clus, double i,double threshold); - double getCxRemoveSC(const reco::SuperClusterRef clus, double i,double threshold); - double getCCx(const reco::SuperClusterRef clus, double i,double threshold); // background subtracted Cx - double getJc (const reco::SuperClusterRef cluster, double r1=0.4, double r2=0.06, double jWidth=0.04, double threshold=0); - double getJcc(const reco::SuperClusterRef cluster, double r1=0.4, double r2=0.06, double jWidth=0.04, double threshold=0); - double getCCxRemoveSC(const reco::SuperClusterRef clus, double i,double threshold); // background subtracted Cx - double getCorrection(const reco::SuperClusterRef clus, double i,double j,double threshold); // background subtracted Cx - double getAvgBCEt(const reco::SuperClusterRef clus, double eta,double phi1, double phi2,double threshold); // background subtracted Cx - double getNBC(const reco::SuperClusterRef clus, double eta,double phi1, double phi2,double threshold); // background subtracted Cx - bool checkUsed(const reco::SuperClusterRef clus, const reco::BasicCluster* clu); - - private: - - const reco::BasicClusterCollection *fEBclusters_; - const reco::BasicClusterCollection *fEEclusters_; - const CaloGeometry *geometry_; - -}; - -#endif diff --git a/RecoHI/HiEgammaAlgos/interface/HICaloUtil.h b/RecoHI/HiEgammaAlgos/interface/HICaloUtil.h deleted file mode 100644 index 76d861bea079a..0000000000000 --- a/RecoHI/HiEgammaAlgos/interface/HICaloUtil.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef HICaloUtil_h -#define HICaloUtil_h - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/ESHandle.h" - -#include "DataFormats/EgammaReco/interface/BasicClusterFwd.h" -#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" - -#include "Geometry/CaloGeometry/interface/CaloGeometry.h" -#include "Geometry/Records/interface/IdealGeometryRecord.h" -#include "DataFormats/Candidate/interface/CandidateFwd.h" - -class HICaloUtil { -public: - HICaloUtil() {} - - static double EcalEta(const reco::Candidate &p); - static double EcalPhi(const reco::Candidate &p); - static double EcalEta(double EtaParticle, double Zvertex, double plane_Radius); - static double EcalPhi(double PtParticle, double EtaParticle, - double PhiParticle, int ChargeParticle, double Rstart); - - static const double kEEtaBarrelEndcap; //eta boundary for between barrel and endcap - static const double kER_ECAL; //radius ecal barrel begin - static const double kEZ_Endcap; //z distance for endcap begin - static const double kERBARM; //magnetic field was 3.15, updated on 16122003 - static const double kEZENDM; //magnetic field was 1.31, updated on 16122003 - -}; - -#endif /*HIROOT_HICaloUtil*/ diff --git a/RecoHI/HiEgammaAlgos/interface/RxCalculator.h b/RecoHI/HiEgammaAlgos/interface/RxCalculator.h deleted file mode 100755 index 456027474b872..0000000000000 --- a/RecoHI/HiEgammaAlgos/interface/RxCalculator.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef RxCalculator_h -#define RxCalculator_h - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/ESHandle.h" - -#include "FWCore/Utilities/interface/InputTag.h" - -#include "DataFormats/EgammaReco/interface/BasicClusterFwd.h" -#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" -#include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h" - - -#include "Geometry/CaloGeometry/interface/CaloGeometry.h" -#include "Geometry/Records/interface/IdealGeometryRecord.h" - -class RxCalculator -{ - public: - - RxCalculator(const edm::Event &iEvent, const edm::EventSetup &iSetup, const edm::InputTag& hbheLabel,const edm::InputTag& hfLabel,const edm::InputTag& hoLabel) ; - - double getRx (const reco::SuperClusterRef clus, double i, double threshold, double innerR=0.0); - double getRFx(const reco::SuperClusterRef clus, double i, double threshold); - double getROx(const reco::SuperClusterRef clus, double i, double threshold); - double getCRx(const reco::SuperClusterRef clus, double i, double threshold, double innerR=0.0); // background subtracted Rx - - private: - - const HBHERecHitCollection *fHBHERecHits_; - const HORecHitCollection *fHORecHits_; - const HFRecHitCollection *fHFRecHits_; - const CaloGeometry *geometry_; -}; - -#endif diff --git a/RecoHI/HiEgammaAlgos/interface/TxCalculator.h b/RecoHI/HiEgammaAlgos/interface/TxCalculator.h deleted file mode 100644 index d96886672cb85..0000000000000 --- a/RecoHI/HiEgammaAlgos/interface/TxCalculator.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef TxCalculator_h -#define TxCalculator_h - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/ESHandle.h" - -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/InputTag.h" - -#include "DataFormats/EgammaReco/interface/BasicClusterFwd.h" -#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" - -#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackReco/interface/TrackFwd.h" - -#include "DataFormats/EgammaCandidates/interface/Photon.h" - -#include "Geometry/CaloGeometry/interface/CaloGeometry.h" -#include "Geometry/Records/interface/IdealGeometryRecord.h" - -#define PI 3.141592653 - -namespace CLHEP { - class HepRandomEngine; -} - -class TxCalculator -{ - public: - - TxCalculator(const edm::Event &iEvent, const edm::EventSetup &iSetup, const edm::InputTag& trackLabel) ; - - double getTx(const reco::Photon& clus, double i,double threshold, double innerDR=0,double effRatio=2); - double getCTx(const reco::Photon& clus, double i,double threshold, double innerDR=0, double effRatio=2); - double getMPT(double ptCut=0, double etaCut=1000); - - double getJurassicArea( double r1, double r2, double width) ; - double getJt(const reco::Photon& cluster, double r1=0.4, double r2=0.04, double jWidth=0.015, double threshold=2); - double getJct(const reco::Photon& cluster, double r1=0.4, double r2=0.04, double jWidth=0.015, double threshold=2); - - private: - - edm::Handle recCollection; - CLHEP::HepRandomEngine *theDice; - - double dRDistance(double eta1,double phi1,double eta2,double phi2) - { - double deta = eta1 - eta2; - double dphi = (calcDphi(phi1, phi2)); - - return sqrt(deta * deta + dphi * dphi); - } - - double calcDphi(double phi1_,double phi2_) - { - double dphi=phi1_-phi2_; - - if (dphi>0){ - while (dphi>2*PI) dphi-=2*PI; - if (dphi>PI) dphi=2*PI-dphi; - } else { - while (dphi<-2*PI) dphi+=2*PI; - if (dphi<-PI) dphi=-2*PI-dphi; - } - return dphi; - } - -}; - -#endif diff --git a/RecoHI/HiEgammaAlgos/interface/TxyCalculator.h b/RecoHI/HiEgammaAlgos/interface/TxyCalculator.h deleted file mode 100755 index 8df9f25bd713c..0000000000000 --- a/RecoHI/HiEgammaAlgos/interface/TxyCalculator.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef TxyCalculator_h -#define TxyCalculator_h - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/ESHandle.h" - -#include "FWCore/Utilities/interface/InputTag.h" - -#include "DataFormats/EgammaReco/interface/BasicClusterFwd.h" -#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" - -#include "Geometry/CaloGeometry/interface/CaloGeometry.h" -#include "Geometry/Records/interface/IdealGeometryRecord.h" - -#include "DataFormats/Candidate/interface/CandidateFwd.h" -#include "DataFormats/Candidate/interface/Candidate.h" - -#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackReco/interface/TrackFwd.h" - -#include "DataFormats/EgammaCandidates/interface/Photon.h" - -#define PI 3.141592653 - -class TxyCalculator -{ -public: - TxyCalculator(const edm::Event &iEvent, const edm::EventSetup &iSetup, const edm::InputTag& trackLabel); - double getTxy(const reco::Photon& p, double x, double y); - double getHollSxy(const reco::Photon& p, double thePtCut, double outerR, double innerR); - int getNumAllTracks(double ptCut); - int getNumLocalTracks(const reco::Photon& p, double detaCut, double ptCut); - - -private: - - double dRDistance(double eta1,double phi1,double eta2,double phi2) - { - double deta = eta1 - eta2; - double dphi = (calcDphi(phi1, phi2)); - - return sqrt(deta * deta + dphi * dphi); - } - - double calcDphi(double phi1_,double phi2_) - { - double dphi=phi1_-phi2_; - - if (dphi>0){ - while (dphi>2*PI) dphi-=2*PI; - if (dphi>PI) dphi=2*PI-dphi; - } else { - while (dphi<-2*PI) dphi+=2*PI; - if (dphi<-PI) dphi=-2*PI-dphi; - } - return dphi; - } - -private: - edm::Handle recCollection; -}; - -#endif - diff --git a/RecoHI/HiEgammaAlgos/interface/dRxyCalculator.h b/RecoHI/HiEgammaAlgos/interface/dRxyCalculator.h deleted file mode 100755 index 37031b0ca4e79..0000000000000 --- a/RecoHI/HiEgammaAlgos/interface/dRxyCalculator.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef dRxyCalculator_h -#define dRxyCalculator_h - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/EventSetup.h" -#include "FWCore/Framework/interface/ESHandle.h" - -#include "FWCore/Utilities/interface/InputTag.h" - -#include "DataFormats/EgammaReco/interface/BasicClusterFwd.h" -#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" - -#include "Geometry/CaloGeometry/interface/CaloGeometry.h" -#include "Geometry/Records/interface/IdealGeometryRecord.h" - -#include "DataFormats/Candidate/interface/CandidateFwd.h" -#include "DataFormats/Candidate/interface/Candidate.h" - -#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackReco/interface/TrackFwd.h" -#include "DataFormats/EgammaCandidates/interface/Photon.h" - -#define PI 3.141592653 - -class dRxyCalculator -{ -public: - dRxyCalculator(const edm::Event &iEvent, const edm::EventSetup &iSetup, const edm::InputTag& trackLabel); - double getDRxy(const reco::Photon& cluster, double x, double y); - -private: - double dRDistance(double eta1,double phi1,double eta2,double phi2) - { - double deta = eta1 - eta2; - double dphi = (calcDphi(phi1, phi2)); - - return sqrt(deta * deta + dphi * dphi); - } - - double calcDphi(double phi1_,double phi2_) - { - double dphi=phi1_-phi2_; - - if (dphi>0){ - while (dphi>2*PI) dphi-=2*PI; - if (dphi>PI) dphi=2*PI-dphi; - } else { - while (dphi<-2*PI) dphi+=2*PI; - if (dphi<-PI) dphi=-2*PI-dphi; - } - return dphi; - } - -private: - edm::Handle recCollection; -}; - -#endif - diff --git a/RecoHI/HiEgammaAlgos/plugins/HiEgammaIsolationProducer.cc b/RecoHI/HiEgammaAlgos/plugins/HiEgammaIsolationProducer.cc deleted file mode 100644 index 9acd86eb6bf00..0000000000000 --- a/RecoHI/HiEgammaAlgos/plugins/HiEgammaIsolationProducer.cc +++ /dev/null @@ -1,164 +0,0 @@ -// -*- C++ -*- -// -// Package: PatAlgos -// Class: HiEgammaIsolationProducer -// -/**\class HiEgammaIsolationProducer HiEgammaIsolationProducer.cc PhysicsTools/PatAlgos/test/HiEgammaIsolationProducer.cc - - Description: Produce HI Egamma isolationsfor PAT - - Implementation: - -*/ -// -// Original Author: Yen-Jie Lee -// -// - - -// system include files -#include - -// user include files -#include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/EDProducer.h" - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/MakerMacros.h" - -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/InputTag.h" - - -#include "DataFormats/EgammaCandidates/interface/Photon.h" - -#include "DataFormats/Common/interface/View.h" -#include "DataFormats/Common/interface/ValueMap.h" -#include "DataFormats/Common/interface/OwnVector.h" - -#include "RecoHI/HiEgammaAlgos/interface/CxCalculator.h" -#include "RecoHI/HiEgammaAlgos/interface/RxCalculator.h" -#include "RecoHI/HiEgammaAlgos/interface/TxyCalculator.h" -#include "RecoHI/HiEgammaAlgos/interface/dRxyCalculator.h" - -#include - -namespace edm { using ::std::advance; } - -// -// class decleration -// - -class HiEgammaIsolationProducer : public edm::EDProducer { - public: - explicit HiEgammaIsolationProducer(const edm::ParameterSet&); - ~HiEgammaIsolationProducer(); - - - private: - virtual void produce(edm::Event&, const edm::EventSetup&) override; - - // ----------member data --------------------------- - edm::InputTag photons_; - edm::InputTag barrelBCLabel_; - edm::InputTag endcapBCLabel_; - edm::InputTag hfLabel_; - edm::InputTag hoLabel_; - edm::InputTag hbheLabel_; - edm::InputTag trackLabel_; - - std::string label_; - enum IsoMode { calcCx, calcRx, calcTxy, calcDRxy, calcErr }; - double x_; - double y_; - IsoMode var_; - int mode_; -}; - -// -// constructors and destructor -// -HiEgammaIsolationProducer::HiEgammaIsolationProducer(const edm::ParameterSet& iConfig): - photons_(iConfig.getParameter("photons")), - barrelBCLabel_(iConfig.getParameter("barrelBasicCluster")), - endcapBCLabel_(iConfig.getParameter("endcapBasicCluster")), - hfLabel_(iConfig.getParameter("hfreco")), - hoLabel_(iConfig.getParameter("horeco")), - hbheLabel_(iConfig.getParameter("hbhereco")), - trackLabel_(iConfig.getParameter("track")), - label_(iConfig.existsAs("label") ? iConfig.getParameter("label") : ""), - x_(iConfig.getParameter("x")), - y_(iConfig.getParameter("y")), - var_(iConfig.getParameter("iso") == "Cx" ? calcCx : - iConfig.getParameter("iso") == "Rx" ? calcRx : - iConfig.getParameter("iso") == "Txy" ? calcTxy : - iConfig.getParameter("iso") == "dRxy" ? calcDRxy : calcErr ), - mode_( iConfig.getParameter("mode") == "BackgroundSubtracted" ? 1 : 0) -{ - produces >(); -} - - -HiEgammaIsolationProducer::~HiEgammaIsolationProducer() -{ -} - -// ------------ method called to for each event ------------ -void -HiEgammaIsolationProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) -{ - using namespace edm; - using namespace std; - - Handle > recoPhotons; - iEvent.getByLabel(photons_, recoPhotons); - //std::cout << "Got " << recoPhotons->size() << " photons" << std::endl; - //std::cout << "mode "< floats(recoPhotons->size(), -100); - - CxCalculator CxC(iEvent,iSetup,barrelBCLabel_,endcapBCLabel_); - RxCalculator RxC(iEvent,iSetup,hbheLabel_,hfLabel_,hoLabel_); - TxyCalculator TxyC(iEvent,iSetup,trackLabel_); - dRxyCalculator dRxyC(iEvent,iSetup,trackLabel_); - - for (size_t i = 0; i < recoPhotons->size(); ++i) { - if (var_ == calcRx) { - if (mode_ == 1) { - floats[i] = RxC.getCRx((*recoPhotons)[i].superCluster(),x_,0); - } else { - floats[i] = RxC.getRx((*recoPhotons)[i].superCluster(),x_,0); - } - } else if (var_ == calcCx) { - if (mode_ == 1) { - floats[i] = CxC.getCCx((*recoPhotons)[i].superCluster(),x_,0); - } else { - floats[i] = CxC.getCx((*recoPhotons)[i].superCluster(),x_,0); - } - } else if (var_ == calcTxy) { - if (mode_ == 1) { - // No background subtraction for the moment... - floats[i] = TxyC.getTxy((*recoPhotons)[i],x_,y_); - } else { - floats[i] = TxyC.getTxy((*recoPhotons)[i],x_,y_); - } - } else if (var_ == calcDRxy) { - if (mode_ == 1) { - // No background subtraction for the moment... - floats[i] = dRxyC.getDRxy((*recoPhotons)[i],x_,y_); - } else { - floats[i] = dRxyC.getDRxy((*recoPhotons)[i],x_,y_); - } - } - } - - auto_ptr > pis(new ValueMap()); - ValueMap::Filler floatfiller(*pis); - floatfiller.insert(recoPhotons, floats.begin(), floats.end()); - floatfiller.fill(); - iEvent.put(pis); - - -} - -//define this as a plug-in -DEFINE_FWK_MODULE(HiEgammaIsolationProducer); diff --git a/RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.cc b/RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.cc index af7a2b3114c56..c7d921746fcfb 100755 --- a/RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.cc +++ b/RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.cc @@ -1,8 +1,6 @@ #include "RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.h" #include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" #include "DataFormats/EcalRecHit/interface/EcalRecHit.h" -#include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h" #include "FWCore/PluginManager/interface/ModuleDef.h" #include "FWCore/Framework/interface/MakerMacros.h" @@ -37,8 +35,10 @@ HiEgammaSCCorrectionMaker::HiEgammaSCCorrectionMaker(const edm::ParameterSet& ps else verbosity_ = HiEgammaSCEnergyCorrectionAlgo::pERROR; // the input producers - rHInputProducer_ = ps.getParameter("recHitProducer"); - sCInputProducer_ = ps.getParameter("rawSuperClusterProducer"); + rHInputProducerTag_ = ps.getParameter("recHitProducer"); + sCInputProducerTag_ = ps.getParameter("rawSuperClusterProducer"); + rHInputProducer_ = consumes(rHInputProducerTag_); + sCInputProducer_ = consumes(sCInputProducerTag_); std::string sCAlgo_str = ps.getParameter("superClusterAlgo"); // determine which BasicCluster algo we are correcting for @@ -106,7 +106,7 @@ HiEgammaSCCorrectionMaker::produce(edm::Event& evt, const edm::EventSetup& es) es.get().get(theCaloTopo_); const CaloTopology *topology = theCaloTopo_.product(); - std::string rHInputCollection = rHInputProducer_.instance(); + std::string rHInputCollection = rHInputProducerTag_.instance(); if(rHInputCollection == "EcalRecHitsEB") { geometry_p = geometry.getSubdetectorGeometry(DetId::Ecal, EcalBarrel); } else if(rHInputCollection == "EcalRecHitsEE") { @@ -121,21 +121,21 @@ HiEgammaSCCorrectionMaker::produce(edm::Event& evt, const edm::EventSetup& es) // Get raw SuperClusters from the event Handle pRawSuperClusters; try { - evt.getByLabel(sCInputProducer_, pRawSuperClusters); + evt.getByToken(sCInputProducer_, pRawSuperClusters); } catch ( cms::Exception& ex ) { edm::LogError("HiEgammaSCCorrectionMakerError") << "Error! can't get the rawSuperClusters " - << sCInputProducer_.label() ; + << sCInputProducerTag_.label() ; } // Get the RecHits from the event Handle pRecHits; try { - evt.getByLabel(rHInputProducer_, pRecHits); + evt.getByToken(rHInputProducer_, pRecHits); } catch ( cms::Exception& ex ) { edm::LogError("HiEgammaSCCorrectionMakerError") << "Error! can't get the RecHits " - << rHInputProducer_.label(); + << rHInputProducerTag_.label(); } // Create a pointer to the RecHits and raw SuperClusters diff --git a/RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.h b/RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.h index b3cbd4ddd6f37..5130e256b6551 100755 --- a/RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.h +++ b/RecoHI/HiEgammaAlgos/plugins/HiEgammaSCCorrectionMaker.h @@ -26,6 +26,8 @@ #include "FWCore/Framework/interface/EventSetup.h" #include "DataFormats/EgammaReco/interface/BasicCluster.h" #include "DataFormats/CaloRecHit/interface/CaloCluster.h" +#include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h" +#include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" #include "RecoHI/HiEgammaAlgos/interface/HiEgammaSCEnergyCorrectionAlgo.h" #include "RecoEcal/EgammaCoreTools/interface/EcalClusterFunctionBaseClass.h" @@ -59,8 +61,10 @@ class HiEgammaSCCorrectionMaker : public edm::EDProducer { double etThresh_; // vars to get products - edm::InputTag rHInputProducer_; - edm::InputTag sCInputProducer_; + edm::InputTag rHInputProducerTag_; + edm::InputTag sCInputProducerTag_; + edm::EDGetTokenT rHInputProducer_; + edm::EDGetTokenT sCInputProducer_; reco::CaloCluster::AlgoId sCAlgo_; std::string outputCollection_; diff --git a/RecoHI/HiEgammaAlgos/plugins/HiSuperClusterProducer.cc b/RecoHI/HiEgammaAlgos/plugins/HiSuperClusterProducer.cc index 795646fd94d6f..db5a5109f171a 100644 --- a/RecoHI/HiEgammaAlgos/plugins/HiSuperClusterProducer.cc +++ b/RecoHI/HiEgammaAlgos/plugins/HiSuperClusterProducer.cc @@ -16,7 +16,6 @@ // Reconstruction Classes #include "DataFormats/EgammaReco/interface/BasicCluster.h" -#include "DataFormats/EgammaReco/interface/BasicClusterFwd.h" #include "DataFormats/EgammaReco/interface/SuperCluster.h" #include "DataFormats/EgammaReco/interface/SuperClusterFwd.h" @@ -33,11 +32,6 @@ HiSuperClusterProducer::HiSuperClusterProducer(const edm::ParameterSet& ps) else if (verbosityString == "INFO") verbosity = HiBremRecoveryClusterAlgo::pINFO; else verbosity = HiBremRecoveryClusterAlgo::pERROR; - endcapClusterProducer_ = ps.getParameter("endcapClusterProducer"); - barrelClusterProducer_ = ps.getParameter("barrelClusterProducer"); - - endcapClusterCollection_ = ps.getParameter("endcapClusterCollection"); - barrelClusterCollection_ = ps.getParameter("barrelClusterCollection"); endcapSuperclusterCollection_ = ps.getParameter("endcapSuperclusterCollection"); barrelSuperclusterCollection_ = ps.getParameter("barrelSuperclusterCollection"); @@ -69,6 +63,11 @@ HiSuperClusterProducer::HiSuperClusterProducer(const edm::ParameterSet& ps) produces< reco::SuperClusterCollection >(endcapSuperclusterCollection_); produces< reco::SuperClusterCollection >(barrelSuperclusterCollection_); + eeClustersToken_ = consumes(edm::InputTag(ps.getParameter("endcapClusterProducer"), + ps.getParameter("endcapClusterCollection"))); + ebClustersToken_ = consumes(edm::InputTag(ps.getParameter("barrelClusterProducer"), + ps.getParameter("barrelClusterCollection"))); + totalE = 0; noSuperClusters = 0; nEvt_ = 0; @@ -98,23 +97,22 @@ void HiSuperClusterProducer::endJob() { void HiSuperClusterProducer::produce(edm::Event& evt, const edm::EventSetup& es) { if(doEndcaps_) - produceSuperclustersForECALPart(evt, endcapClusterProducer_, endcapClusterCollection_, endcapSuperclusterCollection_); + produceSuperclustersForECALPart(evt, eeClustersToken_, endcapSuperclusterCollection_); if(doBarrel_) - produceSuperclustersForECALPart(evt, barrelClusterProducer_, barrelClusterCollection_, barrelSuperclusterCollection_); + produceSuperclustersForECALPart(evt, ebClustersToken_, barrelSuperclusterCollection_); nEvt_++; } void HiSuperClusterProducer::produceSuperclustersForECALPart(edm::Event& evt, - std::string clusterProducer, - std::string clusterCollection, - std::string superclusterCollection) + const edm::EDGetTokenT& clustersToken, + std::string superclusterCollection) { // get the cluster collection out and turn it to a BasicClusterRefVector: reco::CaloClusterPtrVector *clusterPtrVector_p = new reco::CaloClusterPtrVector; - getClusterPtrVector(evt, clusterProducer, clusterCollection, clusterPtrVector_p); + getClusterPtrVector(evt, clustersToken, clusterPtrVector_p); // run the brem recovery and get the SC collection std::auto_ptr @@ -135,15 +133,15 @@ void HiSuperClusterProducer::produceSuperclustersForECALPart(edm::Event& evt, } -void HiSuperClusterProducer::getClusterPtrVector(edm::Event& evt, std::string clusterProducer_, std::string clusterCollection_, reco::CaloClusterPtrVector *clusterPtrVector_p) +void HiSuperClusterProducer::getClusterPtrVector(edm::Event& evt, const edm::EDGetTokenT& clustersToken, reco::CaloClusterPtrVector *clusterPtrVector_p) { edm::Handle bccHandle; - evt.getByLabel(clusterProducer_, clusterCollection_, bccHandle); + evt.getByToken(clustersToken, bccHandle); + if (!(bccHandle.isValid())) { edm::LogError("HiSuperClusterProducerError") << "could not get a handle on the BasicCluster Collection!"; - edm::LogError("HiSuperClusterProducerError") << "Error! can't get the product " << clusterCollection_.c_str(); clusterPtrVector_p = 0; } diff --git a/RecoHI/HiEgammaAlgos/plugins/HiSuperClusterProducer.h b/RecoHI/HiEgammaAlgos/plugins/HiSuperClusterProducer.h index 9e7cc18699612..bd643238a1a27 100644 --- a/RecoHI/HiEgammaAlgos/plugins/HiSuperClusterProducer.h +++ b/RecoHI/HiEgammaAlgos/plugins/HiSuperClusterProducer.h @@ -36,15 +36,12 @@ class HiSuperClusterProducer : public edm::EDProducer HiBremRecoveryClusterAlgo::VerbosityLevel verbosity; - std::string endcapClusterCollection_; - std::string barrelClusterCollection_; - - std::string endcapClusterProducer_; - std::string barrelClusterProducer_; - std::string endcapSuperclusterCollection_; std::string barrelSuperclusterCollection_; + edm::EDGetTokenT eeClustersToken_; + edm::EDGetTokenT ebClustersToken_; + float barrelEtaSearchRoad_; float barrelPhiSearchRoad_; float endcapEtaSearchRoad_; @@ -62,11 +59,10 @@ class HiSuperClusterProducer : public edm::EDProducer int noSuperClusters; - void getClusterPtrVector(edm::Event& evt, std::string clusterProducer_, std::string clusterCollection_, reco::CaloClusterPtrVector *); + void getClusterPtrVector(edm::Event& evt, const edm::EDGetTokenT& clustersToken, reco::CaloClusterPtrVector *); void produceSuperclustersForECALPart(edm::Event& evt, - std::string clusterProducer, - std::string clusterCollection, + const edm::EDGetTokenT& clustersToken, std::string superclusterColection); void outputValidationInfo(reco::SuperClusterCollection &superclusterCollection); diff --git a/RecoHI/HiEgammaAlgos/python/HiCaloIsolation_cff.py b/RecoHI/HiEgammaAlgos/python/HiCaloIsolation_cff.py deleted file mode 100644 index a09417f8a709f..0000000000000 --- a/RecoHI/HiEgammaAlgos/python/HiCaloIsolation_cff.py +++ /dev/null @@ -1,176 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -from RecoHI.HiEgammaAlgos.HiIsolationCommonParameters_cff import * - -isoC1 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(1), - y = cms.double(0), -) - -isoC2 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(2), - y = cms.double(0), -) - -isoC3 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(3), - y = cms.double(0), -) - -isoC4 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(4), - y = cms.double(0), -) - -isoC5 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(5), - y = cms.double(0), -) - -isoCC1 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(1), - y = cms.double(0), -) - -isoCC2 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(2), - y = cms.double(0), -) - -isoCC3 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(3), - y = cms.double(0), -) - -isoCC4 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(4), - y = cms.double(0), -) - -isoCC5 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Cx"), - x = cms.double(5), - y = cms.double(0), -) - -isoR1 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(1), - y = cms.double(0), -) - -isoR2 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(2), - y = cms.double(0), -) - -isoR3 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(3), - y = cms.double(0), -) - -isoR4 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(4), - y = cms.double(0), -) - -isoR5 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(5), - y = cms.double(0), -) - -isoCR1 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(1), - y = cms.double(0), -) - -isoCR2 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(2), - y = cms.double(0), -) - -isoCR3 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(3), - y = cms.double(0), -) - -isoCR4 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(4), - y = cms.double(0), -) - -isoCR5 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("BackgroundSubtracted"), - iso = cms.string("Rx"), - x = cms.double(5), - y = cms.double(0), -) - - -hiEcalIsolation = cms.Sequence(isoC1+isoC2+isoC3+isoC4+isoC5) -hiEcalIsolationBckSubtracted = cms.Sequence(isoCC1+isoCC2+isoCC3+isoCC4+isoCC5) -hiHcalIsolation = cms.Sequence(isoR1+isoR2+isoR3+isoR4+isoR5) -hiHcalIsolationBckSubtracted = cms.Sequence(isoCR1+isoCR2+isoCR3+isoCR4+isoCR5) - -hiCaloIsolation = cms.Sequence(hiEcalIsolation+hiHcalIsolation) -hiCaloIsolationBckSubtracted = cms.Sequence(hiEcalIsolationBckSubtracted+hiHcalIsolationBckSubtracted) - -hiCaloIsolationAll = cms.Sequence(hiCaloIsolation+hiCaloIsolationBckSubtracted) - - diff --git a/RecoHI/HiEgammaAlgos/python/HiEgammaIsolation_cff.py b/RecoHI/HiEgammaAlgos/python/HiEgammaIsolation_cff.py deleted file mode 100644 index 5cca03d81018d..0000000000000 --- a/RecoHI/HiEgammaAlgos/python/HiEgammaIsolation_cff.py +++ /dev/null @@ -1,23 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -from RecoHI.HiEgammaAlgos.HiCaloIsolation_cff import * -from RecoHI.HiEgammaAlgos.HiTrackerIsolation_cff import * - -from RecoEgamma.EgammaIsolationAlgos.gamIsolationSequence_cff import * -from RecoEgamma.PhotonIdentification.photonId_cff import * - -from RecoEcal.EgammaClusterProducers.reducedRecHitsSequence_cff import * - -interestingEcalDetIdEB.basicClustersLabel = cms.InputTag("islandBasicClusters","islandBarrelBasicClusters") -interestingEcalDetIdEE.basicClustersLabel = cms.InputTag("islandBasicClusters","islandEndcapBasicClusters") - - -gamIsoDepositEcalFromHits.ExtractorPSet.barrelEcalHits = cms.InputTag("reducedEcalRecHitsEB") -gamIsoDepositEcalFromHits.ExtractorPSet.endcapEcalHits = cms.InputTag("reducedEcalRecHitsEE") - -gamIsoDepositTk.ExtractorPSet.inputTrackCollection = isolationInputParameters.track - -hiEgammaIsolationSequenceAll = cms.Sequence(hiCaloIsolationAll+hiTrackerIsolation) -hiEgammaIsolationSequence = cms.Sequence(hiCaloIsolationBckSubtracted+hiTrackerIsolation+photonIDSequence+reducedEcalRecHitsSequence*gamIsolationSequence) - - diff --git a/RecoHI/HiEgammaAlgos/python/HiEgamma_cff.py b/RecoHI/HiEgammaAlgos/python/HiEgamma_cff.py index a1e1d51102d5c..275e4a1dee35f 100644 --- a/RecoHI/HiEgammaAlgos/python/HiEgamma_cff.py +++ b/RecoHI/HiEgammaAlgos/python/HiEgamma_cff.py @@ -7,14 +7,12 @@ from RecoEcal.EgammaClusterProducers.multi5x5PreshowerClusteringSequence_cff import * from RecoEcal.EgammaClusterProducers.preshowerClusteringSequence_cff import * from RecoHI.HiEgammaAlgos.HiIsolationCommonParameters_cff import * +from RecoEcal.EgammaClusterProducers.particleFlowSuperClusteringSequence_cff import * -hiEcalClusteringSequence = cms.Sequence(islandClusteringSequence*hybridClusteringSequence*multi5x5ClusteringSequence*multi5x5PreshowerClusteringSequence*preshowerClusteringSequence) +particleFlowSuperClusterECAL.regressionConfig.vertexCollection = 'hiSelectedVertex' + +hiEcalClusteringSequence = cms.Sequence(islandClusteringSequence*hybridClusteringSequence*multi5x5ClusteringSequence*multi5x5PreshowerClusteringSequence*preshowerClusteringSequence*particleFlowSuperClusteringSequence) -# high purity tracks -#highPurityTracks = cms.EDFilter("TrackSelector", -# src = cms.InputTag("hiSelectedTracks"), -## cut = cms.string('quality("highPurity")') -#) # reco photon producer from RecoEgamma.EgammaPhotonProducers.photonSequence_cff import * @@ -32,22 +30,16 @@ photons.primaryVertexProducer = cms.InputTag('hiSelectedVertex') # replace the primary vertex photons.isolationSumsCalculatorSet.trackProducer = isolationInputParameters.track # cms.InputTag("highPurityTracks") -hiPhotonSequence = cms.Sequence(#highPurityTracks* - photonSequence) +hiPhotonSequence = cms.Sequence(photonSequence) -# HI Egamma Isolation -from RecoHI.HiEgammaAlgos.HiEgammaIsolation_cff import * # HI Ecal reconstruction hiEcalClusters = cms.Sequence(hiEcalClusteringSequence) hiEgammaSequence = cms.Sequence(hiPhotonSequence) -hiEcalClustersIsolation = cms.Sequence(hiEgammaSequence * hiEgammaIsolationSequence) # HI Spike Clean Sequence import RecoHI.HiEgammaAlgos.hiSpikeCleaner_cfi -hiSpikeCleanedSC = RecoHI.HiEgammaAlgos.hiSpikeCleaner_cfi.hiSpikeCleaner.clone( -# swissCutThr = cms.untracked.double(0.95) - ) +hiSpikeCleanedSC = RecoHI.HiEgammaAlgos.hiSpikeCleaner_cfi.hiSpikeCleaner.clone() cleanPhotonCore = photonCore.clone( scHybridBarrelProducer = cms.InputTag("hiSpikeCleanedSC") ) @@ -56,6 +48,5 @@ ) hiPhotonCleaningSequence = cms.Sequence(hiSpikeCleanedSC * - #highPurityTracks * cleanPhotonCore * cleanPhotons) diff --git a/RecoHI/HiEgammaAlgos/python/HiElectronSequence_cff.py b/RecoHI/HiEgammaAlgos/python/HiElectronSequence_cff.py index 1c189aa0d0c6e..3cf6ef37dc807 100644 --- a/RecoHI/HiEgammaAlgos/python/HiElectronSequence_cff.py +++ b/RecoHI/HiEgammaAlgos/python/HiElectronSequence_cff.py @@ -1,7 +1,5 @@ import FWCore.ParameterSet.Config as cms -# load local PF Reco -from RecoHI.Configuration.Reconstruction_hiPF_cff import HiParticleFlowLocalReco # creates the recoGsfTracks_electronGsfTracks__RECO = input GSF tracks from TrackingTools.GsfTracking.GsfElectronTracking_cff import * @@ -20,17 +18,31 @@ # run the supercluster(EE+EB)-GSF track association ==> output: recoGsfElectrons_gsfElectrons__RECO from RecoEgamma.EgammaElectronProducers.gsfElectronSequence_cff import * from RecoParticleFlow.PFProducer.pfElectronTranslator_cff import * -gsfElectrons.ctfTracks = cms.InputTag("hiSelectedTracks") -gsfElectronCores.ctfTracks = cms.InputTag("hiSelectedTracks") +gsfElectrons.ctfTracks = cms.InputTag("hiGeneralTracks") +gsfElectronCores.ctfTracks = cms.InputTag("hiGeneralTracks") pfElectronTranslator.emptyIsOk = cms.bool(True) -ecalDrivenGsfElectrons.ctfTracksTag = cms.InputTag("hiSelectedTracks") -ecalDrivenGsfElectronCores.ctfTracks = cms.InputTag("hiSelectedTracks") +ecalDrivenGsfElectrons.ctfTracksTag = cms.InputTag("hiGeneralTracks") +ecalDrivenGsfElectronCores.ctfTracks = cms.InputTag("hiGeneralTracks") ecalDrivenGsfElectrons.maxHOverEBarrel = cms.double(0.25) ecalDrivenGsfElectrons.maxHOverEEndcaps = cms.double(0.25) -hiElectronSequence = cms.Sequence(electronGsfTrackingHi * - HiParticleFlowLocalReco * - gsfEcalDrivenElectronSequence + + +from RecoParticleFlow.PFTracking.pfTrack_cfi import * +pfTrack.UseQuality = cms.bool(True) +pfTrack.TrackQuality = cms.string('highPurity') +pfTrack.TkColList = cms.VInputTag("hiGeneralTracks") +pfTrack.PrimaryVertexLabel = cms.InputTag("hiSelectedVertex") +pfTrack.MuColl = cms.InputTag("muons") + +from RecoParticleFlow.PFTracking.pfTrackElec_cfi import * +pfTrackElec.applyGsfTrackCleaning = cms.bool(True) +pfTrackElec.PrimaryVertexLabel = cms.InputTag("hiSelectedVertex") + +hiElectronSequence = cms.Sequence(electronGsfTrackingHi * + pfTrack * + pfTrackElec * + gsfEcalDrivenElectronSequence ) diff --git a/RecoHI/HiEgammaAlgos/python/HiTrackerIsolation_cff.py b/RecoHI/HiEgammaAlgos/python/HiTrackerIsolation_cff.py deleted file mode 100644 index 52df33b6d2c5d..0000000000000 --- a/RecoHI/HiEgammaAlgos/python/HiTrackerIsolation_cff.py +++ /dev/null @@ -1,265 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -from RecoHI.HiEgammaAlgos.HiIsolationCommonParameters_cff import * - -isoT11 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(1), - y = cms.double(1), -) - -isoT12 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(1), - y = cms.double(2), -) - -isoT13 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(1), - y = cms.double(3), -) - -isoT14 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(1), - y = cms.double(4), -) - -isoT21 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(2), - y = cms.double(1), -) - -isoT22 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(2), - y = cms.double(2), -) - -isoT23 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(2), - y = cms.double(3), -) - -isoT24 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(2), - y = cms.double(4), -) - -isoT31 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(3), - y = cms.double(1), -) - -isoT32 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(3), - y = cms.double(2), -) - -isoT33 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(3), - y = cms.double(3), -) - -isoT34 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(3), - y = cms.double(4), -) - -isoT41 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(4), - y = cms.double(1), -) - -isoT42 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(4), - y = cms.double(2), -) - -isoT43 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(4), - y = cms.double(3), -) - -isoT44 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("Txy"), - x = cms.double(4), - y = cms.double(4), -) - -isoDR11 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(1), - y = cms.double(1), -) - -isoDR12 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(1), - y = cms.double(2), -) - -isoDR13 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(1), - y = cms.double(3), -) - -isoDR14 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(1), - y = cms.double(4), -) - -isoDR21 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(2), - y = cms.double(1), -) - -isoDR22 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(2), - y = cms.double(2), -) - -isoDR23 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(2), - y = cms.double(3), -) - -isoDR24 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(2), - y = cms.double(4), -) - -isoDR31 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(3), - y = cms.double(1), -) - -isoDR32 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(3), - y = cms.double(2), -) - -isoDR33 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(3), - y = cms.double(3), -) - -isoDR34 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(3), - y = cms.double(4), -) - -isoDR41 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(4), - y = cms.double(1), -) - -isoDR42 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(4), - y = cms.double(2), -) - -isoDR43 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(4), - y = cms.double(3), -) - -isoDR44 = cms.EDProducer("HiEgammaIsolationProducer", - isolationInputParameters, - mode = cms.string("noBackgroundSubtracted"), - iso = cms.string("dRxy"), - x = cms.double(4), - y = cms.double(4), -) - - -hiTrackCountingIsolation = cms.Sequence(isoT11+isoT12+isoT13+isoT14+isoT21+isoT22+isoT23+isoT24+isoT31+isoT32+isoT33+isoT34+isoT41+isoT42+isoT43+isoT44) -hiTrackVetoConeIsolation = cms.Sequence(isoDR11+isoDR12+isoDR13+isoDR14+isoDR21+isoDR22+isoDR23+isoDR24+isoDR31+isoDR32+isoDR33+isoDR34+isoDR41+isoDR42+isoDR43+isoDR44) - -hiTrackerIsolation = cms.Sequence(hiTrackCountingIsolation+hiTrackVetoConeIsolation) diff --git a/RecoHI/HiEgammaAlgos/src/CxCalculator.cc b/RecoHI/HiEgammaAlgos/src/CxCalculator.cc deleted file mode 100755 index 10a7f615d662c..0000000000000 --- a/RecoHI/HiEgammaAlgos/src/CxCalculator.cc +++ /dev/null @@ -1,707 +0,0 @@ -// ROOT includes -#include - -#include "RecoHI/HiEgammaAlgos/interface/CxCalculator.h" -#include "FWCore/MessageLogger/interface/MessageLogger.h" - -#include "Geometry/Records/interface/CaloGeometryRecord.h" -#include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h" - -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/EgammaReco/interface/BasicCluster.h" -#include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "DataFormats/Math/interface/Vector3D.h" - - -using namespace edm; -using namespace reco; -using namespace std; -using namespace ROOT::Math::VectorUtil; - -#define PI 3.141592653589793238462643383279502884197169399375105820974945 - - -double CxCalculator::getJurassicArea( double r1, double r2, double width) { - - float theta1 = asin( width / r1); - float theta2 = asin( width / r2); - float theA = sqrt ( r1*r1 + r2*r2 - 2 * r1 * r2 * cos ( theta1 - theta2) ); - float area1 = 0.5 * r1*r1 * ( 3.141592 - 2 * theta1 ) ; - float area2 = 0.5 * r2*r2 * ( 3.141592 - 2 * theta2 ) ; - float area3 = width * theA; - float finalArea = 2 * ( area1 - area2 - area3); - return finalArea; -} - - - -CxCalculator::CxCalculator (const edm::Event &iEvent, const edm::EventSetup &iSetup,const edm::InputTag& barrelLabel,const edm::InputTag& endcapLabel) -{ -//InputTag("islandBasicClusters:islandBarrelBasicClusters") -//InputTag("islandBasicClusters:islandEndcapBasicClusters") - Handle pEBclusters; - iEvent.getByLabel(barrelLabel, pEBclusters); - if(pEBclusters.isValid()) - fEBclusters_ = pEBclusters.product(); - else - fEBclusters_ = NULL; - - Handle pEEclusters; - iEvent.getByLabel(endcapLabel, pEEclusters); - if(pEEclusters.isValid()) - fEEclusters_ = pEEclusters.product(); - else - fEEclusters_ = NULL; - - ESHandle geometryHandle; - iSetup.get().get(geometryHandle); - if(geometryHandle.isValid()) - geometry_ = geometryHandle.product(); - else - geometry_ = NULL; - -} - -double CxCalculator::getCx(const reco::SuperClusterRef cluster, double x, double threshold) -{ - using namespace edm; - using namespace reco; - - if(!fEBclusters_) { -// LogError("CxCalculator") << "Error! Can't get EBclusters for event."; - return -100; - } - - if(!fEEclusters_) { -// LogError("CxCalculator") << "Error! Can't get EEclusters for event."; - return -100; - } - - math::XYZVector SClusPoint(cluster->position().x(), - cluster->position().y(), - cluster->position().z()); - - double TotalEt = 0; - - TotalEt = - cluster->rawEnergy()/cosh(cluster->eta()); - - // Loop over barrel basic clusters - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - - double dR = ROOT::Math::VectorUtil::DeltaR(ClusPoint,SClusPoint); - - if (dRenergy()/cosh(eta); - if (etbegin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - const GlobalPoint clusPoint(clu->x(),clu->y(),clu->z()); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - - double dR = ROOT::Math::VectorUtil::DeltaR(ClusPoint,SClusPoint); - - if (dRenergy()/cosh(eta); - if (etposition().x(), - cluster->position().y(), - cluster->position().z()); - - double TotalEt = 0; - - TotalEt = 0; - - // Loop over barrel basic clusters - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - - double dR = ROOT::Math::VectorUtil::DeltaR(ClusPoint,SClusPoint); - - // check if this basic cluster is used in the target supercluster - bool inSuperCluster = checkUsed(cluster,clu); - - if (dRenergy()/cosh(eta); - if (etbegin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - const GlobalPoint clusPoint(clu->x(),clu->y(),clu->z()); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - - double dR = ROOT::Math::VectorUtil::DeltaR(ClusPoint,SClusPoint); - - // check if this basic cluster is used in the target supercluster - bool inSuperCluster = checkUsed(cluster,clu); - - if (dRenergy()/cosh(eta); - if (eteta(); - double SClusterPhi = cluster->phi(); - double TotalEt = 0; - - TotalEt = - cluster->rawEnergy()/cosh(cluster->eta()); - - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - - double dEta = fabs(eta-SClusterEta); - - if (dEtaenergy()/cosh(eta); - if (etbegin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - if (dPhi>PI) dPhi=2*PI-dPhi; - - if (dEtaenergy()/cosh(eta); - if (eteta(); - double SClusterPhi = cluster->phi(); - double TotalEt = 0; - - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - - double dEta = fabs(eta-SClusterEta); - double dPhi = phi-SClusterPhi; - if ( dPhi < -PI ) dPhi = dPhi + 2*PI ; - if ( dPhi > PI ) dPhi = dPhi - 2*PI ; - if ( fabs(dPhi) > PI ) cout << " error!!! dphi > 2pi : " << dPhi << endl; - double dR = sqrt(dEta*dEta+dPhi*dPhi); - - // Jurassic Cone ///// - if ( dR > r1 ) continue; - if ( dR < r2 ) continue; - if ( fabs(dEta) < jWidth) continue; - ////////////////////// - double theEt = clu->energy()/cosh(eta); - if (theEtbegin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = phi-SClusterPhi; - if ( dPhi < -PI ) dPhi = dPhi + 2*PI ; - if ( dPhi > PI ) dPhi = dPhi - 2*PI ; - if ( fabs(dPhi) >PI ) cout << " error!!! dphi > 2pi : " << dPhi << endl; - double dR = sqrt(dEta*dEta+dPhi*dPhi); - // Jurassic Cone ///// - if ( dR > r1 ) continue; - if ( dR < r2 ) continue; - if ( fabs(dEta) < jWidth) continue; - ////////////////////// - double theEt = clu->energy()/cosh(eta); - if (theEteta(); - double SClusterPhi = cluster->phi(); - double TotalEt = 0; - - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - - double dEta = fabs(eta-SClusterEta); - double dPhi = phi-SClusterPhi; - if ( dPhi < -PI ) dPhi = dPhi + 2*PI ; - if ( dPhi > PI ) dPhi = dPhi - 2*PI ; - // double dR = sqrt(dEta*dEta+dPhi*dPhi); - - //////// phi strip ///////// - if ( fabs(dEta) > r1 ) continue; - if ( fabs(dPhi) energy()/cosh(eta); - if (theEtbegin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = phi-SClusterPhi; - if ( dPhi < -PI ) dPhi = dPhi + 2*PI ; - if ( dPhi > PI ) dPhi = dPhi - 2*PI ; - // double dR = sqrt(dEta*dEta+dPhi*dPhi); - - //////// phi strip ///////// - if ( fabs(dEta) > r1 ) continue; - if ( fabs(dPhi) < r1 ) continue; - ////////////////////// - - double theEt = clu->energy()/cosh(eta); - if (theEteta(); - double SClusterPhi = cluster->phi(); - double TotalEt = 0; - - TotalEt = 0; - - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - - double dEta = fabs(eta-SClusterEta); - - // check if this basic cluster is used in the target supercluster - bool inSuperCluster = checkUsed(cluster,clu); - - if (dEtaenergy()/cosh(eta); - if (etbegin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - if (dPhi>PI) dPhi=2*PI-dPhi; - - // check if this basic cluster is used in the target supercluster - bool inSuperCluster = checkUsed(cluster,clu); - - if (dEtaenergy()/cosh(eta); - if (etclustersBegin(); - - // Loop over the basicClusters inside the target superCluster - for(;theEclust != sc->clustersEnd(); theEclust++) { - if ((**theEclust) == (*bc) ) return true; //matched, so it's used. - } - return false; -} - -double CxCalculator::getBCMax(const reco::SuperClusterRef cluster,int i) -{ - reco::CaloCluster_iterator theEclust = cluster->clustersBegin(); - - double energyMax=0,energySecond=0; - // Loop over the basicClusters inside the target superCluster - for(;theEclust != cluster->clustersEnd(); theEclust++) { - if ((*theEclust)->energy()>energyMax ) { - energySecond=energyMax; - energyMax=(*theEclust)->energy(); - } else if ((*theEclust)->energy()>energySecond) { - energySecond=(*theEclust)->energy(); - } - } - if (i==1) return energyMax; - return energySecond; -} - - -double CxCalculator::getCorrection(const reco::SuperClusterRef cluster, double x, double y,double threshold) -{ - using namespace edm; - using namespace reco; - - // doesn't really work now ^^; (Yen-Jie) - if(!fEBclusters_) { - LogError("CxCalculator") << "Error! Can't get EBclusters for event."; - return -100; - } - - if(!fEEclusters_) { - LogError("CxCalculator") << "Error! Can't get EEclusters for event."; - return -100; - } - - double SClusterEta = cluster->eta(); - double SClusterPhi = cluster->phi(); - double TotalEnergy = 0; - double TotalBC = 0; - - TotalEnergy = 0; - - double Area = PI * (-x*x+y*y) / 100.0; - double nCrystal = Area / 0.0174 / 0.0174; // ignore the difference between endcap and barrel for the moment.... - - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - const GlobalPoint clusPoint(clu->x(),clu->y(),clu->z()); - double eta = clusPoint.eta(); - double phi = clusPoint.phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - if (dPhi>PI) dPhi=2*PI-dPhi; - double dR = sqrt(dEta*dEta+dPhi*dPhi); - - if (dR>x*0.1&&dRenergy(); - if (esize(); // number of crystals - - } - } - - for(BasicClusterCollection::const_iterator iclu = fEEclusters_->begin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - const GlobalPoint clusPoint(clu->x(),clu->y(),clu->z()); - double eta = clusPoint.eta(); - double phi = clusPoint.phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - if (dPhi>PI) dPhi=2*PI-dPhi; - double dR = sqrt(dEta*dEta+dPhi*dPhi); - - if (dR>x*0.1&&dRenergy(); - if (esize(); // number of crystals - } - } - - - if (TotalBC==0) return 0; - return TotalEnergy/nCrystal; -} - -double CxCalculator::getAvgBCEt(const reco::SuperClusterRef cluster, double x,double phi1,double phi2, double threshold) -// x: eta cut, phi1: deltaPhiMin cut, phi2: deltaPhiMax -{ - using namespace edm; - using namespace reco; - - - if(!fEBclusters_) { - LogError("CxCalculator") << "Error! Can't get EBclusters for event."; - return -100; - } - - if(!fEEclusters_) { - LogError("CxCalculator") << "Error! Can't get EEclusters for event."; - return -100; - } - - double SClusterEta = cluster->eta(); - double SClusterPhi = cluster->phi(); - - double TotalEt = 0; // Total E - double TotalN = 0; // Total N - - TotalEt = - cluster->rawEnergy()/cosh(cluster->eta()); - - if (fabs(SClusterEta) < 1.479) { - //Barrel - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - - bool inSuperCluster = checkUsed(cluster,clu); - - if (dEtaphi1*0.1&&dPhienergy()/cosh(eta); - if (etbegin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - - bool inSuperCluster = checkUsed(cluster,clu); - - if (dEtaphi1*0.1&&dPhienergy()/cosh(eta); - if (eteta(); - double SClusterPhi = cluster->phi(); - - double TotalEt = 0; // Total E - double TotalN = 0; // Total N - - TotalEt = - cluster->rawEnergy()/cosh(cluster->eta()); - - - - if (fabs(SClusterEta) < 1.479) { - //Barrel - for(BasicClusterCollection::const_iterator iclu = fEBclusters_->begin(); - iclu != fEBclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - - bool inSuperCluster = checkUsed(cluster,clu); - - if (dEtaphi1*0.1&&dPhienergy()/cosh(eta); - if (etbegin(); - iclu != fEEclusters_->end(); ++iclu) { - const BasicCluster *clu = &(*iclu); - math::XYZVector ClusPoint(clu->x(),clu->y(),clu->z()); - double eta = ClusPoint.eta(); - double phi = ClusPoint.phi(); - - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - - bool inSuperCluster = checkUsed(cluster,clu); - - if (dEtaphi1*0.1&&dPhienergy()/cosh(eta); - if (et kEEtaBarrelEndcap ) - { - double Zend = kEZ_Endcap ; - if(EtaParticle<0.0 ) Zend = -Zend ; - double Zlen = Zend - Zvertex ; - double RR = Zlen/sinh(EtaParticle); - Theta = atan((RR+plane_Radius)/Zend); - if(Theta<0.0) Theta = Theta+PI ; - ETA = - log(tan(0.5*Theta)); - } - - return ETA; - } - - return EtaParticle; -} - - -//________________________________________________________________________ -double HICaloUtil::EcalPhi(const Candidate &p) -{ - // Calculate the phi of the particle transported to the Ecal. - - int charge = p.charge(); - double phi = p.phi(); - double rhovert = sqrt(p.vertex().X()*p.vertex().X()+p.vertex().Y()*p.vertex().Y()); - if(charge) phi = EcalPhi(p.pt(), p.eta(), phi, charge, rhovert); - return phi; -} - - -//________________________________________________________________________ -double HICaloUtil::EcalPhi(double PtParticle, double EtaParticle, - double PhiParticle, int ChargeParticle, double Rstart) -{ - // Calculate the phi of the particle transported to the Ecal. - - double Rbend = kERBARM-(Rstart/100.); //assumed rstart in cm - double Bend = 0.3 * 4. * Rbend/ 2.0 ; - - //PHI correction - double PHI = 0.0 ; - if( fabs(EtaParticle) <= kEEtaBarrelEndcap) { - if (fabs(Bend/PtParticle)<=1.) { - PHI = PhiParticle - asin(Bend/PtParticle)*ChargeParticle; - if(PHI > PI) {PHI = PHI - 2*PI;} - if(PHI < -PI) {PHI = PHI + 2*PI;} - return PHI; - } - } else { - double Rhit = 0.0 ; - Rhit = kEZENDM / sinh(fabs(EtaParticle)); - if (fabs(((Rhit-(Rstart/100.))/Rbend)*Bend/PtParticle)<=1.) { - PHI = PhiParticle - asin(((Rhit-(Rstart/100.))/Rbend)*Bend/PtParticle)*ChargeParticle; - if(PHI > PI) {PHI = PHI - 2*PI;} - if(PHI < -PI) {PHI = PHI + 2*PI;} - return PHI; - } else { - return PhiParticle; - } - } - - return PhiParticle; -} diff --git a/RecoHI/HiEgammaAlgos/src/RxCalculator.cc b/RecoHI/HiEgammaAlgos/src/RxCalculator.cc deleted file mode 100755 index c40db2c5902c1..0000000000000 --- a/RecoHI/HiEgammaAlgos/src/RxCalculator.cc +++ /dev/null @@ -1,206 +0,0 @@ -#include "RecoHI/HiEgammaAlgos/interface/RxCalculator.h" - -#include "FWCore/MessageLogger/interface/MessageLogger.h" - -#include "Geometry/Records/interface/IdealGeometryRecord.h" -#include "Geometry/Records/interface/CaloGeometryRecord.h" -#include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h" - -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/EgammaReco/interface/BasicCluster.h" -#include "DataFormats/EgammaReco/interface/SuperCluster.h" - - -using namespace edm; -using namespace reco; - -#define PI 3.141592653589793238462643383279502884197169399375105820974945 - - -RxCalculator::RxCalculator (const edm::Event &iEvent, const edm::EventSetup &iSetup,const edm::InputTag& hbheLabel,const edm::InputTag& hfLabel,const edm::InputTag& hoLabel) -{ - Handle hfhandle; - iEvent.getByLabel(hfLabel, hfhandle); - if(hfhandle.isValid()) - fHFRecHits_ = hfhandle.product(); - else - fHFRecHits_ = NULL; - - Handle hohandle; - iEvent.getByLabel(hoLabel, hohandle); - if(hohandle.isValid()) - fHORecHits_ = hohandle.product(); - else - fHORecHits_ = NULL; - - Handle hehbhandle; - iEvent.getByLabel(hbheLabel, hehbhandle); - if(hehbhandle.isValid()) - fHBHERecHits_ = hehbhandle.product(); - else - fHBHERecHits_ = NULL; - - ESHandle geometryHandle; - iSetup.get().get(geometryHandle); - if(geometryHandle.isValid()) - geometry_ = geometryHandle.product(); - else - geometry_ = NULL; - -} - - -double RxCalculator::getRx(const reco::SuperClusterRef cluster, double x, double threshold, double innerR ) -{ - using namespace edm; - using namespace reco; - - if(!fHBHERecHits_) { -// LogError("RxCalculator") << "Error! Can't get HBHERecHits for event."; - return -100; - } - - double SClusterEta = cluster->eta(); - double SClusterPhi = cluster->phi(); - double TotalEt = 0; - - for(size_t index = 0; index < fHBHERecHits_->size(); index++) { - const HBHERecHit &rechit = (*fHBHERecHits_)[index]; - const DetId &detid = rechit.id(); - const GlobalPoint& hitpoint = geometry_->getPosition(detid); - double eta = hitpoint.eta(); - double phi = hitpoint.phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - if (dPhi>PI) dPhi=2*PI-dPhi; - - if (dPhi>PI) dPhi=2*PI-dPhi; - - double dR = sqrt(dEta * dEta + dPhi * dPhi); - // veto inner cone/////////////// - if ( dR < innerR ) continue; - ///////////////////////////////// - if (dReta(); - double SClusterPhi = cluster->phi(); - double TotalEt = 0; - - for(size_t index = 0; index < fHORecHits_->size(); index++) { - const HORecHit &rechit = (*fHORecHits_)[index]; - const DetId &detid = rechit.id(); - const GlobalPoint& hitpoint = geometry_->getPosition(detid); - double eta = hitpoint.eta(); - double phi = hitpoint.phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - if (dPhi>PI) dPhi=2*PI-dPhi; - - double dR = sqrt(dEta * dEta + dPhi * dPhi); - if (dReta(); - double SClusterPhi = cluster->phi(); - double TotalEt = 0; - - for(size_t index = 0; index < fHFRecHits_->size(); index++) { - const HFRecHit &rechit = (*fHFRecHits_)[index]; - const DetId &detid = rechit.id(); - const GlobalPoint& hitpoint = geometry_->getPosition(detid); - double eta = hitpoint.eta(); - double phi = hitpoint.phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - if (dPhi>PI) dPhi=2*PI-dPhi; - - - double dR = sqrt(dEta * dEta + dPhi * dPhi); - if (dReta(); - double SClusterPhi = cluster->phi(); - double TotalEt = 0; - - for(size_t index = 0; index < fHBHERecHits_->size(); index++) { - const HBHERecHit &rechit = (*fHBHERecHits_)[index]; - const DetId &detid = rechit.id(); - const GlobalPoint& hitpoint = geometry_->getPosition(detid); - double eta = hitpoint.eta(); - double phi = hitpoint.phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = fabs(phi-SClusterPhi); - while (dPhi>2*PI) dPhi-=2*PI; - if (dPhi>PI) dPhi=2*PI-dPhi; - - if (dEta - -#include "RecoHI/HiEgammaAlgos/interface/TxCalculator.h" -#include "FWCore/MessageLogger/interface/MessageLogger.h" - -#include "Geometry/Records/interface/CaloGeometryRecord.h" -#include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h" - -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/EgammaReco/interface/BasicCluster.h" -#include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "DataFormats/Math/interface/Vector3D.h" - -#include "FWCore/ServiceRegistry/interface/Service.h" -#include "FWCore/Utilities/interface/RandomNumberGenerator.h" - -#include "CLHEP/Random/RandomEngine.h" - -using namespace edm; -using namespace reco; -using namespace std; -using namespace ROOT::Math::VectorUtil; - - -TxCalculator::TxCalculator (const edm::Event &iEvent, const edm::EventSetup &iSetup,const edm::InputTag& trackLabel) -{ - iEvent.getByLabel(trackLabel, recCollection); - edm::Service rng; - if ( ! rng.isAvailable()) { - throw cms::Exception("Configuration") - << "XXXXXXX requires the RandomNumberGeneratorService\n" - "which is not present in the configuration file. You must add the service\n" - "in the configuration file or remove the modules that require it."; - } - theDice = &rng->getEngine(iEvent.streamID()); -} - - -double TxCalculator::getJurassicArea( double r1, double r2, double width) { - - float theta1 = asin( width / r1); - float theta2 = asin( width / r2); - float theA = sqrt ( r1*r1 + r2*r2 - 2 * r1 * r2 * cos ( theta1 - theta2) ); - float area1 = 0.5 * r1*r1 * ( 3.141592 - 2 * theta1 ) ; - float area2 = 0.5 * r2*r2 * ( 3.141592 - 2 * theta2 ) ; - float area3 = width * theA; - float finalArea = 2 * ( area1 - area2 - area3); - return finalArea; -} - - -double TxCalculator::getMPT( double ptCut , double etaCut ) -{ - using namespace edm; - using namespace reco; - - double sumpx(0), sumpy(0); - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double pt = recTrack->pt(); - double eta = recTrack->eta(); - - if(pt < ptCut ) - continue; - if ( fabs( eta) > etaCut ) - continue; - - double pxTemp = recTrack->px(); - double pyTemp = recTrack->py(); - - sumpx = sumpx + pxTemp; - sumpy = sumpy + pyTemp; - // cout << " pt = " << recTrack->pt() << " and px = " << pxTemp << " and py = " << pyTemp << endl; - } - // cout << " square = " << sumpx*sumpx + sumpy*sumpy << endl; - double theMPT = sqrt(sumpx*sumpx + sumpy*sumpy) ; - // cout << " mpt = "<< theMPT << endl; - - return theMPT; -} - - -double TxCalculator::getTx(const reco::Photon& cluster, double x, double threshold, double innerDR, double effRatio) -{ - - using namespace edm; - using namespace reco; - - - - double SClusterEta = cluster.eta(); - double SClusterPhi = cluster.phi(); - double TotalPt = 0; - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double diceNum = theDice->flat(); - if ( (effRatio < 1 ) && ( diceNum > effRatio)) - continue; - - double pt = recTrack->pt(); - double eta2 = recTrack->eta(); - double phi2 = recTrack->phi(); - - if(dRDistance(SClusterEta,SClusterPhi,eta2,phi2) >= 0.1 * x) - continue; - if(dRDistance(SClusterEta,SClusterPhi,eta2,phi2) < innerDR) - continue; - if(pt > threshold) - TotalPt = TotalPt + pt; - } - - return TotalPt; -} - - - - - -double TxCalculator::getCTx(const reco::Photon& cluster, double x, double threshold, double innerDR,double effRatio) -{ - using namespace edm; - using namespace reco; - - double SClusterEta = cluster.eta(); - double SClusterPhi = cluster.phi(); - double TotalPt = 0; - - TotalPt = 0; - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double diceNum = theDice->flat(); - if ( (effRatio < 1 ) && ( diceNum > effRatio)) - continue; - - - double pt = recTrack->pt(); - double eta2 = recTrack->eta(); - double phi2 = recTrack->phi(); - double dEta = fabs(eta2-SClusterEta); - - if(dEta >= 0.1 * x) - continue; - if(dRDistance(SClusterEta,SClusterPhi,eta2,phi2) < innerDR) - continue; - - if(pt > threshold) - TotalPt = TotalPt + pt; - } - - double Tx = getTx(cluster,x,threshold,innerDR,effRatio); - double CTx = Tx - TotalPt / 40.0 * x; - - return CTx; -} - - - -double TxCalculator::getJt(const reco::Photon& cluster, double r1, double r2, double jWidth, double threshold) -{ - - using namespace edm; - using namespace reco; - - - double SClusterEta = cluster.eta(); - double SClusterPhi = cluster.phi(); - double TotalPt = 0; - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double pt = recTrack->pt(); - double eta = recTrack->eta(); - double phi = recTrack->phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = phi-SClusterPhi; - if ( dPhi < -PI ) dPhi = dPhi + 2*PI ; - if ( dPhi > PI ) dPhi = dPhi - 2*PI ; - if ( fabs(dPhi) >PI ) cout << " error!!! dphi > 2pi : " << dPhi << endl; - double dR = sqrt(dEta*dEta+dPhi*dPhi); - // Jurassic Cone ///// - if ( dR > r1 ) continue; - if ( dR < r2 ) continue; - if ( fabs(dEta) < jWidth) continue; - // stupid bug if ( fabs(dPhi) > jWidth) continue; - ////////////////////// - - if(pt > threshold) - TotalPt = TotalPt + pt; - } - - return TotalPt; -} - - -double TxCalculator::getJct(const reco::Photon& cluster, double r1, double r2, double jWidth, double threshold) -{ - - using namespace edm; - using namespace reco; - - - double SClusterEta = cluster.eta(); - double SClusterPhi = cluster.phi(); - double TotalPt = 0; - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double pt = recTrack->pt(); - double eta = recTrack->eta(); - double phi = recTrack->phi(); - double dEta = fabs(eta-SClusterEta); - double dPhi = phi-SClusterPhi; - if ( dPhi < -PI ) dPhi = dPhi + 2*PI ; - if ( dPhi > PI ) dPhi = dPhi - 2*PI ; - if ( fabs(dPhi) >PI ) cout << " error!!! dphi > 2pi : " << dPhi << endl; - // double dR = sqrt(dEta*dEta+dPhi*dPhi); - - - //////// phi strip ///////// - if ( fabs(dEta) > r1 ) continue; - if ( fabs(dPhi) threshold) - TotalPt = TotalPt + pt; - } - - double areaStrip = 4*PI*r1 - 4*r1*r1; - double areaJura = getJurassicArea(r1,r2, jWidth) ; - double theCJ = getJt(cluster,r1, r2, jWidth, threshold); - - double theCCJ = theCJ - TotalPt * areaJura / areaStrip ; - return theCCJ; - -} - diff --git a/RecoHI/HiEgammaAlgos/src/TxyCalculator.cc b/RecoHI/HiEgammaAlgos/src/TxyCalculator.cc deleted file mode 100755 index 507ddde47e73d..0000000000000 --- a/RecoHI/HiEgammaAlgos/src/TxyCalculator.cc +++ /dev/null @@ -1,117 +0,0 @@ -#include "RecoHI/HiEgammaAlgos/interface/TxyCalculator.h" -#include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "Geometry/Records/interface/IdealGeometryRecord.h" -#include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h" -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/EgammaReco/interface/BasicCluster.h" -#include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "DataFormats/Candidate/interface/Candidate.h" - -using namespace edm; -using namespace reco; - -TxyCalculator::TxyCalculator(const edm::Event &iEvent, const edm::EventSetup &iSetup, const edm::InputTag& trackLabel) -{ - // Get reconstructed tracks - iEvent.getByLabel(trackLabel, recCollection); // !! -} - - -int TxyCalculator::getNumAllTracks(double ptCut) -{ - using namespace edm; - using namespace reco; - - int nTracks = 0; - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double pt = recTrack->pt(); - if ( pt > ptCut) - nTracks = nTracks +1; - } - return nTracks; -} - - -int TxyCalculator::getNumLocalTracks(const reco::Photon& p, double detaCut, double ptCut) -{ - using namespace edm; - using namespace reco; - - int nTracks = 0; - - double eta1 = p.eta(); - double phi1 = p.phi(); - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double pt = recTrack->pt(); - if ( (pt > ptCut) && ( fabs(eta1 - recTrack->eta()) < detaCut) && ( fabs(calcDphi(recTrack->phi(),phi1)) < 3.141592/2. ) ) - nTracks= nTracks +1; - } - return nTracks; -} - -double TxyCalculator::getTxy(const reco::Photon& p, double x, double y) -{ - using namespace edm; - using namespace reco; - - // if(!recCollection) - // { - // LogError("TxyCalculator") << "Error! The track container is not found."; - // return -100; - // } - - - double eta1 = p.eta(); - double phi1 = p.phi(); - - float txy = 0; - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double pt = recTrack->pt(); - double eta2 = recTrack->eta(); - double phi2 = recTrack->phi(); - - if(dRDistance(eta1,phi1,eta2,phi2) >= 0.1 * x) - continue; - - if(pt > y * 0.4) - txy = txy + 1; - } - - return txy; -} - -double TxyCalculator::getHollSxy(const reco::Photon& p, double thePtCut, double outerR, double innerR) -{ - using namespace edm; - using namespace reco; - - double eta1 = p.eta(); - double phi1 = p.phi(); - - double ptSum = 0; - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double pt = recTrack->pt(); - double eta2 = recTrack->eta(); - double phi2 = recTrack->phi(); - if (dRDistance(eta1,phi1,eta2,phi2) >= outerR) - continue; - if (dRDistance(eta1,phi1,eta2,phi2) <= innerR) - continue; - if(pt > thePtCut) - ptSum = ptSum + pt; - } - - return ptSum; -} diff --git a/RecoHI/HiEgammaAlgos/src/dRxyCalculator.cc b/RecoHI/HiEgammaAlgos/src/dRxyCalculator.cc deleted file mode 100755 index f0a901186c281..0000000000000 --- a/RecoHI/HiEgammaAlgos/src/dRxyCalculator.cc +++ /dev/null @@ -1,61 +0,0 @@ -#include "RecoHI/HiEgammaAlgos/interface/dRxyCalculator.h" -#include "FWCore/MessageLogger/interface/MessageLogger.h" -#include "Geometry/Records/interface/IdealGeometryRecord.h" -#include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h" -#include "DataFormats/Common/interface/Handle.h" -#include "DataFormats/EgammaReco/interface/BasicCluster.h" -#include "DataFormats/EgammaReco/interface/SuperCluster.h" -#include "DataFormats/Candidate/interface/Candidate.h" - -using namespace edm; -using namespace reco; - -dRxyCalculator::dRxyCalculator(const edm::Event &iEvent, const edm::EventSetup &iSetup,const edm::InputTag& trackLabel) -{ - // Get reconstructed tracks - iEvent.getByLabel(trackLabel, recCollection); // !! - -} - -double dRxyCalculator::getDRxy(const reco::Photon& p, double x, double y) -{ - using namespace edm; - using namespace reco; - - double eta1 = p.eta(); - double phi1 = p.phi(); - - std::vector Rxy; - - for(reco::TrackCollection::const_iterator - recTrack = recCollection->begin(); recTrack!= recCollection->end(); recTrack++) - { - double pt = recTrack->pt(); - double eta2 = recTrack->eta(); - double phi2 = recTrack->phi(); - - if(pt < x * 0.4) - continue; - - double dR = dRDistance(eta1,phi1,eta2,phi2); - - if(Rxy.size() < y+1) - { - Rxy.push_back(dR); - sort(Rxy.begin(), Rxy.end()); - continue; - } - - if(dR < Rxy[Rxy.size()-1]) - { - Rxy[Rxy.size()-1] = dR; - sort(Rxy.begin(), Rxy.end()); - } - } - - double rxy = 4; - if (Rxy.size() + diff --git a/RecoHI/HiEvtPlaneAlgos/interface/HiEvtPlaneFlatten.h b/RecoHI/HiEvtPlaneAlgos/interface/HiEvtPlaneFlatten.h index c732dec60d83b..6587ad50bb03b 100644 --- a/RecoHI/HiEvtPlaneAlgos/interface/HiEvtPlaneFlatten.h +++ b/RecoHI/HiEvtPlaneAlgos/interface/HiEvtPlaneFlatten.h @@ -1,17 +1,8 @@ #ifndef __HiEvtPlaneFlatten__ #define __HiEvtPlaneFlatten__ -// -*- C++ -*- -// -// Package: HiEvtPlaneFlatten -// Class: HiEvtPlaneFlatten -// -// -// // Original Author: Stephen Sanders // Created: Mon Jun 7 14:40:12 EDT 2010 -// -// // system include files #include diff --git a/RecoHI/HiEvtPlaneAlgos/python/HiEvtPlane_cfi.py b/RecoHI/HiEvtPlaneAlgos/python/HiEvtPlane_cfi.py index 21ca2d510dccd..b593dba240088 100644 --- a/RecoHI/HiEvtPlaneAlgos/python/HiEvtPlane_cfi.py +++ b/RecoHI/HiEvtPlaneAlgos/python/HiEvtPlane_cfi.py @@ -3,8 +3,7 @@ hiEvtPlane = cms.EDProducer("EvtPlaneProducer", vtxCollection_=cms.InputTag("hiSelectedVertex"), caloCollection_=cms.InputTag("towerMaker"), -# trackCollection_=cms.InputTag("hiGoodTightMergedTracks"), - trackCollection_=cms.InputTag("hiSelectedTracks"), + trackCollection_=cms.InputTag("hiGeneralTracks"), useECAL_ = cms.untracked.bool(True), useHCAL_ = cms.untracked.bool(True), useTrackPtWeight_ = cms.untracked.bool(True), @@ -12,8 +11,8 @@ maxet_ = cms.untracked.double(500.0), minpt_ = cms.untracked.double(0.3), maxpt_ = cms.untracked.double(2.6), - minvtx_ = cms.untracked.double(-10.), - maxvtx_ = cms.untracked.double(10.), + minvtx_ = cms.untracked.double(-100.), + maxvtx_ = cms.untracked.double(100.), dzerr_ = cms.untracked.double(10.), chi2_ = cms.untracked.double(40.) ) diff --git a/RecoHI/HiEvtPlaneAlgos/python/hievtplaneflatcalib_cfi.py b/RecoHI/HiEvtPlaneAlgos/python/hievtplaneflatcalib_cfi.py index 0766af2ccf7cd..6b32697c9f1c8 100644 --- a/RecoHI/HiEvtPlaneAlgos/python/hievtplaneflatcalib_cfi.py +++ b/RecoHI/HiEvtPlaneAlgos/python/hievtplaneflatcalib_cfi.py @@ -1,5 +1,6 @@ import FWCore.ParameterSet.Config as cms hiEvtPlaneFlatCalib = cms.EDAnalyzer('HiEvtPlaneFlatCalib', + vtxCollection_=cms.InputTag("hiSelectedVertex"), genFlatPsi_ = cms.untracked.bool(True) ) diff --git a/RecoHI/HiEvtPlaneAlgos/src/EvtPlaneProducer.cc b/RecoHI/HiEvtPlaneAlgos/src/EvtPlaneProducer.cc index cfd61749c3532..e5f71b972aa9a 100644 --- a/RecoHI/HiEvtPlaneAlgos/src/EvtPlaneProducer.cc +++ b/RecoHI/HiEvtPlaneAlgos/src/EvtPlaneProducer.cc @@ -1,22 +1,8 @@ -// -*- C++ -*- -// -// Package: EvtPlaneProducer -// Class: EvtPlaneProducer -// -/**\class EvtPlaneProducer EvtPlaneProducer.cc RecoHI/EvtPlaneProducer/src/EvtPlaneProducer.cc - -Description: - -Implementation: - -*/ // // Original Author: Sergey Petrushanko // Created: Fri Jul 11 10:05:00 2008 // // -#define TRACKCOLLECTION 1 -//#define RECOCHARGEDCANDIDATECOLLECTION 1 // system include files @@ -127,14 +113,14 @@ class EvtPlaneProducer : public edm::EDProducer { GenPlane *rp[NumEPNames]; - virtual void beginJob() override ; - virtual void produce(edm::Event&, const edm::EventSetup&) override; - virtual void endJob() override ; + virtual void beginJob() ; + virtual void produce(edm::Event&, const edm::EventSetup&); + virtual void endJob() ; // ----------member data --------------------------- - edm::InputTag vtxCollection_; - edm::InputTag caloCollection_; - edm::InputTag trackCollection_; + edm::EDGetTokenT vtxCollection_; + edm::EDGetTokenT caloCollection_; + edm::EDGetTokenT trackCollection_; bool useECAL_; bool useHCAL_; bool useTrack_; @@ -168,9 +154,9 @@ EvtPlaneProducer::EvtPlaneProducer(const edm::ParameterSet& iConfig) //register your products - vtxCollection_ = iConfig.getParameter("vtxCollection_"); - caloCollection_ = iConfig.getParameter("caloCollection_"); - trackCollection_ = iConfig.getParameter("trackCollection_"); + vtxCollection_ = consumes(iConfig.getParameter("vtxCollection_")); + caloCollection_ = consumes(iConfig.getParameter("caloCollection_")); + trackCollection_ = consumes(iConfig.getParameter("trackCollection_")); useECAL_ = iConfig.getUntrackedParameter("useECAL_",true); useHCAL_ = iConfig.getUntrackedParameter("useHCAL_",true); useTrack_ = iConfig.getUntrackedParameter("useTrack",true); @@ -218,7 +204,7 @@ EvtPlaneProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) //Get Vertex // edm::Handle vertexCollection3; - iEvent.getByLabel(vtxCollection_,vertexCollection3); + iEvent.getByToken(vtxCollection_,vertexCollection3); const reco::VertexCollection * vertices3 = vertexCollection3.product(); vs_sell = vertices3->size(); if(vs_sell>0) { @@ -234,7 +220,7 @@ EvtPlaneProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) double tower_energyet, tower_energyet_e, tower_energyet_h; double s1, s2, s13,s23,s14,s24,s15,s25,s16,s26; Handle calotower; - iEvent.getByLabel(caloCollection_,calotower); + iEvent.getByToken(caloCollection_,calotower); if(calotower.isValid()){ @@ -293,28 +279,19 @@ EvtPlaneProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) double track_eta; double track_phi; double track_pt; -#ifdef TRACKCOLLECTION + Handle tracks; - iEvent.getByLabel(trackCollection_, tracks); + iEvent.getByToken(trackCollection_, tracks); if(tracks.isValid()){ for(reco::TrackCollection::const_iterator j = tracks->begin(); j != tracks->end(); j++){ //Find possible collections with command line: edmDumpEventContent *.root -#endif -#ifdef RECOCHARGEDCANDIDATECOLLECTION - edm::Handle trackCollection; - iEvent.getByLabel("allMergedPtSplit12Tracks",trackCollection); - // iEvent.getByLabel("hiGoodMergedTracks",trackCollection); - if(trackCollection.isValid()){ - - const reco::RecoChargedCandidateCollection * tracks = trackCollection.product(); - for(reco::RecoChargedCandidateCollection::const_iterator j = tracks->begin(); j != tracks->end(); j++){ -#endif + edm::Handle vertex; - iEvent.getByLabel(vtxCollection_, vertex); + iEvent.getByToken(vtxCollection_, vertex); -// find the vertex point and error + // find the vertex point and error math::XYZPoint vtxPoint(0.0,0.0,0.0); double vzErr =0.0, vxErr=0.0, vyErr=0.0; diff --git a/RecoHI/HiEvtPlaneAlgos/src/HiEvtPlaneFlatCalib.cc b/RecoHI/HiEvtPlaneAlgos/src/HiEvtPlaneFlatCalib.cc index 0f84638957705..a5dad698616d6 100644 --- a/RecoHI/HiEvtPlaneAlgos/src/HiEvtPlaneFlatCalib.cc +++ b/RecoHI/HiEvtPlaneAlgos/src/HiEvtPlaneFlatCalib.cc @@ -1,16 +1,3 @@ -// -*- C++ -*- -// -// Package: HiEvtPlaneFlatCalib -// Class: HiEvtPlaneFlatCalib -// -/**\class HiEvtPlaneFlatCalib HiEvtPlaneFlatCalib.cc HiEvtPlaneFlatten/HiEvtPlaneFlatCalib/src/HiEvtPlaneFlatCalib.cc - - - Description: [one line class summary] - - Implementation: - [Notes on implementation] -*/ // // Original Author: Stephen Sanders // Created: Sat Jun 26 16:04:04 EDT 2010 @@ -29,7 +16,8 @@ #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "DataFormats/HeavyIonEvent/interface/CentralityProvider.h" +#include "RecoHI/HiCentralityAlgos/interface/CentralityProvider.h" + #include "Math/Vector3D.h" #include "DataFormats/Common/interface/Handle.h" @@ -86,6 +74,7 @@ class HiEvtPlaneFlatCalib : public edm::EDAnalyzer { virtual void endJob() override ; // ----------member data --------------------------- + edm::EDGetTokenT vtxCollection_; edm::Service fs; // const CentralityBins * cbins_; CentralityProvider * centrality_; @@ -131,6 +120,7 @@ class HiEvtPlaneFlatCalib : public edm::EDAnalyzer { HiEvtPlaneFlatCalib::HiEvtPlaneFlatCalib(const edm::ParameterSet& iConfig) { genFlatPsi_ = iConfig.getUntrackedParameter("genFlatPsi_",true); + vtxCollection_ = consumes(iConfig.getParameter("vtxCollection_")); // NumCentBins=9; wcent[0] = 0; @@ -215,7 +205,7 @@ HiEvtPlaneFlatCalib::analyze(const edm::Event& iEvent, const edm::EventSetup& iS //Get Vertex // edm::Handle vertexCollection3; - iEvent.getByLabel("hiSelectedVertex",vertexCollection3); + iEvent.getByToken(vtxCollection_,vertexCollection3); const reco::VertexCollection * vertices3 = vertexCollection3.product(); vs_sell = vertices3->size(); if(vs_sell>0) { diff --git a/RecoHI/HiEvtPlaneAlgos/src/HiEvtPlaneFlatProducer.cc b/RecoHI/HiEvtPlaneAlgos/src/HiEvtPlaneFlatProducer.cc index c25ed2e1501b8..26c88e91291d9 100644 --- a/RecoHI/HiEvtPlaneAlgos/src/HiEvtPlaneFlatProducer.cc +++ b/RecoHI/HiEvtPlaneAlgos/src/HiEvtPlaneFlatProducer.cc @@ -1,16 +1,3 @@ -// -*- C++ -*- -// -// Package: HiEvtPlaneFlatProducer -// Class: HiEvtPlaneFlatProducer -// -/**\class HiEvtPlaneFlatProducer HiEvtPlaneFlatProducer.cc HiEvtPlaneFlatten/HiEvtPlaneFlatProducer/src/HiEvtPlaneFlatProducer.cc - - - Description: [one line class summary] - - Implementation: - [Notes on implementation] -*/ // // Original Author: Stephen Sanders // Created: Sat Jun 26 16:04:04 EDT 2010 @@ -93,9 +80,9 @@ class HiEvtPlaneFlatProducer : public edm::EDProducer { // ----------member data --------------------------- - edm::InputTag vtxCollection_; - edm::InputTag inputPlanes_; - edm::InputTag centrality_; + edm::EDGetTokenT vtxCollection_; + edm::EDGetTokenT inputPlanes_; + edm::EDGetTokenT centrality_; int vs_sell; // vertex collection size float vzr_sell; @@ -126,9 +113,9 @@ typedef TrackingParticleRefVector::iterator tp_iterator; HiEvtPlaneFlatProducer::HiEvtPlaneFlatProducer(const edm::ParameterSet& iConfig) { - vtxCollection_ = iConfig.getParameter("vtxCollection_"); - inputPlanes_ = iConfig.getParameter("inputPlanes_"); - centrality_ = iConfig.getParameter("centrality_"); + vtxCollection_ = consumes(iConfig.getParameter("vtxCollection_")); + inputPlanes_ = consumes(iConfig.getParameter("inputPlanes_")); + centrality_ = consumes(iConfig.getParameter("centrality_")); storeNames_ = 1; //register your products produces(); @@ -168,7 +155,7 @@ HiEvtPlaneFlatProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetu // edm::Handle ch; - iEvent.getByLabel(centrality_,ch); + iEvent.getByToken(centrality_,ch); int bin = *(ch.product()); // double centval = 2.5*bin+1.25; @@ -176,7 +163,7 @@ HiEvtPlaneFlatProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetu //Get Vertex // edm::Handle vertexCollection3; - iEvent.getByLabel(vtxCollection_,vertexCollection3); + iEvent.getByToken(vtxCollection_,vertexCollection3); const reco::VertexCollection * vertices3 = vertexCollection3.product(); vs_sell = vertices3->size(); if(vs_sell>0) { @@ -206,7 +193,7 @@ HiEvtPlaneFlatProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetu // Handle evtPlanes; - iEvent.getByLabel(inputPlanes_,evtPlanes); + iEvent.getByToken(inputPlanes_,evtPlanes); if(!evtPlanes.isValid()){ // cout << "Error! Can't get hiEvtPlane product!" << endl; diff --git a/RecoHI/HiEvtPlaneAlgos/src/MoveFlatParamsToDB.cc b/RecoHI/HiEvtPlaneAlgos/src/MoveFlatParamsToDB.cc index 05890281d3492..ffccef8ab223c 100644 --- a/RecoHI/HiEvtPlaneAlgos/src/MoveFlatParamsToDB.cc +++ b/RecoHI/HiEvtPlaneAlgos/src/MoveFlatParamsToDB.cc @@ -1,15 +1,3 @@ -// -*- C++ -*- -// -// Package: MoveFlatParamsToDB -// Class: MoveFlatParamsToDB -// -/**\class MoveFlatParamsToDB MoveFlatParamsToDB.cc HiEvtPlaneFlatten/MoveFlatParamsToDB/src/MoveFlatParamsToDB.cc - - Description: [one line class summary] - - Implementation: - [Notes on implementation] -*/ // // Original Author: Stephen Sanders // Created: Fri Jun 11 12:56:15 EDT 2010 diff --git a/RecoHI/HiJetAlgos/BuildFile.xml b/RecoHI/HiJetAlgos/BuildFile.xml index 00541478b3f3d..2d15a3d8adbc7 100644 --- a/RecoHI/HiJetAlgos/BuildFile.xml +++ b/RecoHI/HiJetAlgos/BuildFile.xml @@ -1,6 +1,10 @@ + + + + diff --git a/RecoHI/HiJetAlgos/interface/JetOffsetCorrector.h b/RecoHI/HiJetAlgos/interface/JetOffsetCorrector.h index 33e2cca4d4067..b60d830f13e18 100644 --- a/RecoHI/HiJetAlgos/interface/JetOffsetCorrector.h +++ b/RecoHI/HiJetAlgos/interface/JetOffsetCorrector.h @@ -6,7 +6,7 @@ class JetOffsetCorrector : public PileUpSubtractor { public: - JetOffsetCorrector(const edm::ParameterSet& iConfig) : PileUpSubtractor(iConfig) {;} + JetOffsetCorrector(const edm::ParameterSet& iConfig, edm::ConsumesCollector && iC) : PileUpSubtractor(iConfig, std::move(iC)) {;} ~JetOffsetCorrector(){;} }; diff --git a/RecoHI/HiJetAlgos/interface/MultipleAlgoIterator.h b/RecoHI/HiJetAlgos/interface/MultipleAlgoIterator.h index 2047d1bf1f913..42b9ae5c2ef4d 100644 --- a/RecoHI/HiJetAlgos/interface/MultipleAlgoIterator.h +++ b/RecoHI/HiJetAlgos/interface/MultipleAlgoIterator.h @@ -5,7 +5,7 @@ class MultipleAlgoIterator : public PileUpSubtractor { public: - MultipleAlgoIterator(const edm::ParameterSet& iConfig) : PileUpSubtractor(iConfig), + MultipleAlgoIterator(const edm::ParameterSet& iConfig, edm::ConsumesCollector && iC) : PileUpSubtractor(iConfig, std::move(iC)), sumRecHits_(iConfig.getParameter("sumRecHits")), dropZeroTowers_(iConfig.getUntrackedParameter("dropZeroTowers",true)) {;} diff --git a/RecoHI/HiJetAlgos/interface/ParametrizedSubtractor.h b/RecoHI/HiJetAlgos/interface/ParametrizedSubtractor.h index 2b308f9e42ec7..a41bf04491c20 100644 --- a/RecoHI/HiJetAlgos/interface/ParametrizedSubtractor.h +++ b/RecoHI/HiJetAlgos/interface/ParametrizedSubtractor.h @@ -5,14 +5,13 @@ #include "RecoJets/JetProducers/interface/PileUpSubtractor.h" #include "DataFormats/HeavyIonEvent/interface/Centrality.h" -#include "FWCore/Utilities/interface/InputTag.h" #include "TH1D.h" #include "TF1.h" class ParametrizedSubtractor : public PileUpSubtractor { public: - ParametrizedSubtractor(const edm::ParameterSet& iConfig); + ParametrizedSubtractor(const edm::ParameterSet& iConfig, edm::ConsumesCollector && iC); virtual void setupGeometryMap(edm::Event& iEvent,const edm::EventSetup& iSetup); virtual void calculatePedestal( std::vector const & coll ); virtual void subtractPedestal(std::vector & coll); @@ -34,7 +33,7 @@ class ParametrizedSubtractor : public PileUpSubtractor { int bin_; double centrality_; const CentralityBins * cbins_; - edm::InputTag centTag_; + edm::EDGetTokenT centTag_; std::vector hEta; std::vector hEtaMean; std::vector hEtaRMS; diff --git a/RecoHI/HiJetAlgos/interface/ReflectedIterator.h b/RecoHI/HiJetAlgos/interface/ReflectedIterator.h index 1af2f734d49f2..9e0f346ae6d44 100644 --- a/RecoHI/HiJetAlgos/interface/ReflectedIterator.h +++ b/RecoHI/HiJetAlgos/interface/ReflectedIterator.h @@ -5,7 +5,7 @@ class ReflectedIterator : public PileUpSubtractor { public: - ReflectedIterator(const edm::ParameterSet& iConfig) : PileUpSubtractor(iConfig), + ReflectedIterator(const edm::ParameterSet& iConfig, edm::ConsumesCollector && iC) : PileUpSubtractor(iConfig, std::move(iC)), sumRecHits_(iConfig.getParameter("sumRecHits")), dropZeroTowers_(iConfig.getUntrackedParameter("dropZeroTowers",true)) {;} diff --git a/RecoHI/HiJetAlgos/interface/UECalibration.h b/RecoHI/HiJetAlgos/interface/UECalibration.h new file mode 100644 index 0000000000000..5755b38247ed1 --- /dev/null +++ b/RecoHI/HiJetAlgos/interface/UECalibration.h @@ -0,0 +1,101 @@ +#ifndef __HiJetAlgos_UECalibration_h__ +#define __HiJetAlgos_UECalibration_h__ + +///////////////////////////////////////////////////////////////////// +// SVD Block Predictor +#include +#include + +#include "FWCore/ParameterSet/interface/FileInPath.h" + +struct UECalibration{ + explicit UECalibration(bool isRealData = true, bool isCalo = false){ + np[0] = 3; // Number of reduced PF ID (track, ECAL, HCAL) + np[1] = 15; // Number of pseudorapidity block + np[2] = 5; // Fourier series order + np[3] = 2; // Re or Im + np[4] = 82; // Number of feature parameter + + ni0[0] = np[1]; + ni0[1] = 344; + + ni1[0] = np[1]; + ni1[1] = 344; + + ni2[0] = np[1]; + ni2[1] = 82; + + index = 0; + + unsigned int Nnp_full = np[0] * np[1] * np[2] * np[3] * np[4]; + unsigned int Nnp = np[0] * np[1] * (1 + (np[2] - 1) * np[3]) * np[4]; + unsigned int Nni0 = ni0[0]*ni0[1]; + unsigned int Nni1 = ni1[0]*ni1[1]; + unsigned int Nni2 = ni2[0]*ni2[1]; + + memset(ue_predictor_pf, 0, Nnp_full * sizeof(float)); + memset(ue_interpolation_pf0, 0, Nni0 * sizeof(float)); + memset(ue_interpolation_pf1, 0, Nni1 * sizeof(float)); + memset(ue_interpolation_pf2, 0, Nni2 * sizeof(float)); + + std::string calibrationFile; + + if(isCalo){ + if(isRealData) calibrationFile = "RecoHI/HiJetAlgos/data/ue_calibrations_calo_data.txt"; + if(!isRealData) calibrationFile = "RecoHI/HiJetAlgos/data/ue_calibrations_calo_mc.txt"; + }else{ + if(isRealData) calibrationFile = "RecoHI/HiJetAlgos/data/ue_calibrations_pf_data.txt"; + if(!isRealData) calibrationFile = "RecoHI/HiJetAlgos/data/ue_calibrations_pf_mc.txt"; + } + + edm::FileInPath ueData(calibrationFile.data()); + std::string qpDataName = ueData.fullPath(); + std::ifstream in( qpDataName.c_str() ); + std::string line; + + while( std::getline( in, line)){ + if(!line.size() || line[0]=='#') { + continue; + } + std::istringstream linestream(line); + float val; + int bin0, bin1, bin2, bin3, bin4; + if(index < Nnp){ + // cout<<"predictor "<>bin0>>bin1>>bin2>>bin3>>bin4>>val; + ue_predictor_pf[bin0][bin1][bin2][bin3][bin4] = val; + }else if(index < Nnp + Nni0){ + // cout<<"inter_0 "<>bin0>>bin1>>val; + ue_interpolation_pf0[bin0][bin1] = val; + }else if(index < Nnp + Nni0 + Nni1){ + // cout<<"inter_1 "<>bin0>>bin1>>val; + ue_interpolation_pf1[bin0][bin1] = val; + }else if(index < Nnp + Nni0 + Nni1 + Nni2){ + // cout<<"inter_2 "<>bin0>>bin1>>val; + ue_interpolation_pf2[bin0][bin1] = val; + } + ++index; + } + } + + unsigned int index, + np[5], + ni0[2], + ni1[2], + ni2[2]; + + float ue_predictor_pf[3][15][5][2][82], + ue_interpolation_pf0[15][344], + ue_interpolation_pf1[15][344], + ue_interpolation_pf2[15][82]; + +}; + + +#endif + + + diff --git a/RecoHI/HiJetAlgos/interface/UEParameters.h b/RecoHI/HiJetAlgos/interface/UEParameters.h new file mode 100644 index 0000000000000..a9d75302dde76 --- /dev/null +++ b/RecoHI/HiJetAlgos/interface/UEParameters.h @@ -0,0 +1,26 @@ +#ifndef __HiJetAlgos_UEParameters_h__ +#define __HiJetAlgos_UEParameters_h__ + +#include + +class UEParameters { + +private: + static const size_t nreduced_particle_flow_id = 3; + const std::vector *v_; + int nn_; + int neta_; + boost::const_multi_array_ref *parameters_; + +public: + UEParameters(const std::vector *v, int nn, int neta); + ~UEParameters(){delete parameters_;} + const std::vector& get_raw(void) const {return *v_;} + + void get_fourier(double &re, double &im, size_t n, size_t eta, int type = -1) const; + double get_sum_pt(int eta, int type = -1) const; + double get_vn(int n, int eta, int type = -1) const; + double get_psin(int n, int eta, int type = -1) const; +}; + +#endif diff --git a/RecoHI/HiJetAlgos/interface/VoronoiAlgorithm.h b/RecoHI/HiJetAlgos/interface/VoronoiAlgorithm.h new file mode 100644 index 0000000000000..54eed2e0b1a8a --- /dev/null +++ b/RecoHI/HiJetAlgos/interface/VoronoiAlgorithm.h @@ -0,0 +1,153 @@ +#ifndef __VoronoiAlgorithm_h__ +#define __VoronoiAlgorithm_h__ + +#include + +#include +#include +#include +#include +#include +#include + +#include + +#include "DataFormats/Math/interface/LorentzVector.h" +#include "DataFormats/Math/interface/deltaR.h" +#include "RecoHI/HiJetAlgos/interface/UECalibration.h" + +class VoronoiAlgorithm { +private: + // + typedef CGAL::Delaunay_triangulation_2< + CGAL::Exact_predicates_inexact_constructions_kernel> + delaunay_triangulation_t; + typedef delaunay_triangulation_t::Point point_2d_t; + class particle_t { + public: + math::PtEtaPhiELorentzVector momentum; + unsigned int reduced_particle_flow_id; + double area; + double momentum_perp_subtracted; + double momentum_perp_subtracted_unequalized; + std::set::iterator> incident; + particle_t(math::PtEtaPhiELorentzVector p, + unsigned int i, double a = NAN, + double ps = NAN) + : momentum(p), reduced_particle_flow_id(i), area(a), + momentum_perp_subtracted(ps), + momentum_perp_subtracted_unequalized(ps), + incident(std::set:: + iterator>()) + { + } + inline operator point_2d_t(void) const + { + return point_2d_t(momentum.Eta(), momentum.Phi()); + } + }; + typedef std::vector event_t; + // Remaining CGAL classes + typedef CGAL::Voronoi_diagram_2< + delaunay_triangulation_t, + CGAL::Delaunay_triangulation_adaptation_traits_2< + delaunay_triangulation_t>, + CGAL:: + Delaunay_triangulation_caching_degeneracy_removal_policy_2< + delaunay_triangulation_t> > voronoi_diagram_t; + typedef CGAL::Polygon_2< + CGAL::Exact_predicates_inexact_constructions_kernel> + polygon_t; +public: + static const size_t nreduced_particle_flow_id = 3; + static const size_t nfourier = 5; +protected: + std::vector _edge_pseudorapidity; + std::vector _cms_hcal_edge_pseudorapidity; + std::vector _cms_ecal_edge_pseudorapidity; + bool _remove_nonpositive; + std::pair _equalization_threshold; + double _radial_distance_square_max; + double _positive_bound_scale; + bool _subtracted; + event_t _event; + boost::multi_array *_perp_fourier; + std::vector _feature; + std::vector _active; + std::vector > _recombine; + std::vector > _recombine_index; + std::vector > _recombine_unsigned; + std::vector _recombine_tie; + size_t _ncost; + std::vector _nblock_subtract; + void *_lp_environment; + void *_lp_problem; + // calibrations + UECalibration *ue; +private: + void initialize_geometry(void); + void allocate(void); + void deallocate(void); + void event_fourier(void); + void feature_extract(void); + void voronoi_area_incident(void); + void subtract_momentum(void); + void recombine_link(void); + void lp_populate(void *lp_problem); + void equalize(void); + void remove_nonpositive(void); + void subtract_if_necessary(void); +public: + VoronoiAlgorithm( + const double dr_max, + const bool isRealData = true, + const bool isCalo = false, + const std::pair equalization_threshold = + std::pair(5.0, 35.0), + const bool remove_nonpositive = true); + ~VoronoiAlgorithm(void); + /** + * Add a new unsubtracted particle to the current event + * + * @param[in] perp transverse momentum + * @param[in] pseudorapidity pseudorapidity + * @param[in] azimuth azimuth + * @param[in] reduced_particle_flow_id reduced particle + * flow ID, between 0 and 2 (inclusive) + */ + void push_back_particle( + const double perp, const double pseudorapidity, + const double azimuth, + const unsigned int reduced_particle_flow_id); + /** + * Clears the list of unsubtracted particles + */ + void clear(void); + /** + * Returns the transverse momenta of the subtracted particles + * + * @return vector of transverse momenta + */ + std::vector subtracted_equalized_perp(void); + std::vector subtracted_unequalized_perp(void); + /** + * Returns the area in the Voronoi diagram diagram occupied by + * a given particle + * + * @return vector of area + */ + std::vector particle_area(void); + /** + * Returns the incident particles in the Delaunay diagram + * (particles that has a given particle as the nearest + * neighbor) + * + * @return vector of sets of incident particles + * indices, using the original indexing + */ + std::vector > particle_incident(void); + std::vector perp_fourier(void); + size_t nedge_pseudorapidity(void) const; +}; + +#endif diff --git a/RecoHI/HiJetAlgos/interface/VoronoiSubtractor.h b/RecoHI/HiJetAlgos/interface/VoronoiSubtractor.h new file mode 100644 index 0000000000000..144545cddb084 --- /dev/null +++ b/RecoHI/HiJetAlgos/interface/VoronoiSubtractor.h @@ -0,0 +1,35 @@ +#ifndef __VoronoiSubtractor_h_ +#define __VoronoiSubtractor_h_ + +#include "RecoJets/JetProducers/interface/PileUpSubtractor.h" +#include "DataFormats/HeavyIonEvent/interface/VoronoiBackground.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" + +class VoronoiSubtractor : public PileUpSubtractor { + public: + VoronoiSubtractor(const edm::ParameterSet& iConfig, edm::ConsumesCollector && iC); + virtual void setupGeometryMap(edm::Event& iEvent,const edm::EventSetup& iSetup); + virtual void calculatePedestal(std::vector const & coll); + virtual void subtractPedestal(std::vector & coll); + virtual void calculateOrphanInput(std::vector & orphanInput); + virtual void offsetCorrectJets(); + + bool match(fastjet::PseudoJet, fastjet::PseudoJet); + + ~VoronoiSubtractor(){;} + + private: + edm::Handle candidates_; + edm::Handle backgrounds_; + edm::EDGetTokenT srcCand_; + edm::EDGetTokenT > srcVor_; + std::vector droppedCandidates_; + bool dropZeroTowers_; + bool addNegativesFromCone_; + double infinitesimalPt_; + double rParam_; + +}; + + +#endif diff --git a/RecoHI/HiJetAlgos/plugins/BuildFile.xml b/RecoHI/HiJetAlgos/plugins/BuildFile.xml index 8ca5f1457dda6..efd981f1d32cf 100644 --- a/RecoHI/HiJetAlgos/plugins/BuildFile.xml +++ b/RecoHI/HiJetAlgos/plugins/BuildFile.xml @@ -4,12 +4,14 @@ + + + + + + + - - - - - - - + + diff --git a/RecoHI/HiJetAlgos/plugins/HiGenCleaner.cc b/RecoHI/HiJetAlgos/plugins/HiGenCleaner.cc index dd9a616161140..8891851e46c7d 100644 --- a/RecoHI/HiJetAlgos/plugins/HiGenCleaner.cc +++ b/RecoHI/HiJetAlgos/plugins/HiGenCleaner.cc @@ -58,7 +58,7 @@ class HiGenCleaner : public edm::EDProducer { virtual void produce(edm::Event&, const edm::EventSetup&) override; // ----------member data --------------------------- - InputTag jetSrc_; + edm::EDGetTokenT > jetSrc_; double deltaR_; double ptCut_; bool makeNew_; @@ -81,14 +81,14 @@ class HiGenCleaner : public edm::EDProducer { template HiGenCleaner::HiGenCleaner(const edm::ParameterSet& iConfig) : - jetSrc_(iConfig.getParameter( "src")), + jetSrc_(consumes >(iConfig.getParameter("src"))), deltaR_(iConfig.getParameter("deltaR")), ptCut_(iConfig.getParameter("ptCut")), makeNew_(iConfig.getUntrackedParameter("createNewCollection",true)), fillDummy_(iConfig.getUntrackedParameter("fillDummyEntries",true)) { - std::string alias = jetSrc_.label(); - produces().setBranchAlias (alias); + std::string alias = (iConfig.getParameter( "src")).label(); + produces().setBranchAlias (alias); } template @@ -115,7 +115,7 @@ HiGenCleaner::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) jets = auto_ptr(new T2Collection); edm::Handle > genjets; - iEvent.getByLabel(jetSrc_,genjets); + iEvent.getByToken(jetSrc_,genjets); int jetsize = genjets->size(); diff --git a/RecoHI/HiJetAlgos/plugins/HiL1Subtractor.cc b/RecoHI/HiJetAlgos/plugins/HiL1Subtractor.cc index 2d43bb464324e..22943a5d5c0f0 100644 --- a/RecoHI/HiJetAlgos/plugins/HiL1Subtractor.cc +++ b/RecoHI/HiJetAlgos/plugins/HiL1Subtractor.cc @@ -1,7 +1,4 @@ #include "RecoHI/HiJetAlgos/plugins/HiL1Subtractor.h" -#include "DataFormats/JetReco/interface/CaloJetCollection.h" -#include "DataFormats/JetReco/interface/PFJetCollection.h" -#include "DataFormats/JetReco/interface/GenJetCollection.h" #include @@ -21,20 +18,24 @@ double medianPtkt[12]; // constructors and destructor // HiL1Subtractor::HiL1Subtractor(const edm::ParameterSet& iConfig) : - src_ ( iConfig.getParameter("src") ), - jetType_ (iConfig.getParameter("jetType") ), - rhoTag_ (iConfig.getParameter("rhoTag") ) + jetType_ (iConfig.getParameter("jetType") ), + rhoTagString_ (iConfig.getParameter("rhoTag") ) { + rhoTag_ = (consumes > (rhoTagString_)); if(jetType_ == "CaloJet"){ produces(); + caloJetSrc_ = (consumes< edm::View >(iConfig.getParameter("src"))); } else if(jetType_ == "PFJet"){ produces(); + pfJetSrc_ = (consumes< edm::View >(iConfig.getParameter("src"))); } else if(jetType_ == "GenJet"){ - produces(); + produces(); + genJetSrc_ = (consumes< edm::View >(iConfig.getParameter("src"))); + } else{ throw cms::Exception("InvalidInput") << "invalid jet type in HiL1Subtractor\n"; @@ -63,12 +64,12 @@ HiL1Subtractor::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) if(jetType_ == "GenJet"){ std::auto_ptr jets( new reco::GenJetCollection); edm::Handle< edm::View > h_jets; - iEvent.getByLabel( src_, h_jets ); + iEvent.getByToken( genJetSrc_, h_jets ); // Grab appropriate rho, hard coded for the moment edm::Handle > rs; - iEvent.getByLabel(edm::InputTag(rhoTag_,"rhos"),rs); - //iEvent.getByLabel(edm::InputTag("ic5CaloJets","rhos"),rs); + iEvent.getByToken(rhoTag_, rs); + int rsize = rs->size(); for(int j = 0; j < rsize; j++){ @@ -119,12 +120,11 @@ HiL1Subtractor::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) }else if(jetType_ == "CaloJet"){ std::auto_ptr jets( new reco::CaloJetCollection); edm::Handle< edm::View > h_jets; - iEvent.getByLabel( src_, h_jets ); + iEvent.getByToken( caloJetSrc_, h_jets ); // Grab appropriate rho, hard coded for the moment edm::Handle > rs; - iEvent.getByLabel(edm::InputTag(rhoTag_,"rhos"),rs); - //iEvent.getByLabel(edm::InputTag("ic5CaloJets","rhos"),rs); + iEvent.getByToken(rhoTag_, rs); int rsize = rs->size(); @@ -181,12 +181,11 @@ HiL1Subtractor::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) else if(jetType_ == "PFJet"){ std::auto_ptr jets( new reco::PFJetCollection); edm::Handle< edm::View > h_jets; - iEvent.getByLabel( src_, h_jets ); + iEvent.getByToken( pfJetSrc_, h_jets ); // Grab appropriate rho, hard coded for the moment edm::Handle > rs; - iEvent.getByLabel(edm::InputTag(rhoTag_,"rhos"),rs); - //iEvent.getByLabel(edm::InputTag("ic5CaloJets","rhos"),rs); + iEvent.getByToken(rhoTag_,rs); int rsize = rs->size(); diff --git a/RecoHI/HiJetAlgos/plugins/HiL1Subtractor.h b/RecoHI/HiJetAlgos/plugins/HiL1Subtractor.h index 8571f5cb66978..184e43b1f2335 100644 --- a/RecoHI/HiJetAlgos/plugins/HiL1Subtractor.h +++ b/RecoHI/HiJetAlgos/plugins/HiL1Subtractor.h @@ -31,8 +31,10 @@ #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/InputTag.h" +#include "DataFormats/JetReco/interface/GenJetCollection.h" +#include "DataFormats/JetReco/interface/CaloJetCollection.h" +#include "DataFormats/JetReco/interface/PFJetCollection.h" // // class declaration @@ -58,11 +60,16 @@ class HiL1Subtractor : public edm::EDProducer { // ----------member data --------------------------- - edm::InputTag src_; // input jet source - + // input jet source + edm::EDGetTokenT > genJetSrc_; + edm::EDGetTokenT > caloJetSrc_; + edm::EDGetTokenT > pfJetSrc_; + protected: std::string jetType_; // Type of jet - std::string rhoTag_; // Algorithm for rho estimation + std::string rhoTagString_; // Algorithm for rho estimation + + edm::EDGetTokenT > rhoTag_; }; diff --git a/RecoHI/HiJetAlgos/plugins/ParticleTowerProducer.cc b/RecoHI/HiJetAlgos/plugins/ParticleTowerProducer.cc index 81442b95d58ef..26f4e3ed5fd19 100644 --- a/RecoHI/HiJetAlgos/plugins/ParticleTowerProducer.cc +++ b/RecoHI/HiJetAlgos/plugins/ParticleTowerProducer.cc @@ -66,8 +66,8 @@ ParticleTowerProducer::ParticleTowerProducer(const edm::ParameterSet& iConfig): geo_(0) { //register your products - src_ = iConfig.getParameter("src"); - useHF_ = iConfig.getUntrackedParameter("useHF"); + src_ = consumes(iConfig.getParameter("src")); + useHF_ = iConfig.getParameter("useHF"); produces(); @@ -110,7 +110,7 @@ ParticleTowerProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup edm::Handle inputsHandle; - iEvent.getByLabel(src_, inputsHandle); + iEvent.getByToken(src_, inputsHandle); for(reco::PFCandidateCollection::const_iterator ci = inputsHandle->begin(); ci!=inputsHandle->end(); ++ci) { diff --git a/RecoHI/HiJetAlgos/plugins/ParticleTowerProducer.h b/RecoHI/HiJetAlgos/plugins/ParticleTowerProducer.h index 4daff6bb78239..89cdf217d0b4f 100644 --- a/RecoHI/HiJetAlgos/plugins/ParticleTowerProducer.h +++ b/RecoHI/HiJetAlgos/plugins/ParticleTowerProducer.h @@ -44,8 +44,8 @@ class ParticleTowerProducer : public edm::EDProducer { int phi2iphi(double phi, int ieta) const; // ----------member data --------------------------- - - edm::InputTag src_; + + edm::EDGetTokenT src_; bool useHF_; std::map towers_; diff --git a/RecoHI/HiJetAlgos/plugins/VoronoiBackgroundProducer.cc b/RecoHI/HiJetAlgos/plugins/VoronoiBackgroundProducer.cc new file mode 100644 index 0000000000000..b13d1882392c9 --- /dev/null +++ b/RecoHI/HiJetAlgos/plugins/VoronoiBackgroundProducer.cc @@ -0,0 +1,150 @@ +// system include files +#include +#include + +// user include files +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/EDProducer.h" + +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" + +#include "FWCore/ParameterSet/interface/ParameterSet.h" + +#include "DataFormats/HeavyIonEvent/interface/VoronoiBackground.h" +#include "DataFormats/ParticleFlowCandidate/interface/PFCandidate.h" +#include "DataFormats/Candidate/interface/Candidate.h" +#include "DataFormats/Candidate/interface/LeafCandidate.h" + +#include "RecoHI/HiJetAlgos/interface/VoronoiAlgorithm.h" + +using namespace std; +// +// class declaration +// + +class VoronoiBackgroundProducer : public edm::EDProducer { + public: + explicit VoronoiBackgroundProducer(const edm::ParameterSet&); + ~VoronoiBackgroundProducer(); + + static void fillDescriptions(edm::ConfigurationDescriptions& descriptions); + + private: + virtual void produce(edm::Event&, const edm::EventSetup&); + + // ----------member data --------------------------- + + edm::EDGetTokenT src_; + VoronoiAlgorithm* voronoi_; + bool doEqualize_; + double equalizeThreshold0_; + double equalizeThreshold1_; + double equalizeR_; + bool isCalo_; + int etaBins_; + int fourierOrder_; + std::vector vvm; + +}; + +// +// constants, enums and typedefs +// + + +// +// static data member definitions +// + +// +// constructors and destructor +// +VoronoiBackgroundProducer::VoronoiBackgroundProducer(const edm::ParameterSet& iConfig): + voronoi_(0), + doEqualize_(iConfig.getParameter("doEqualize")), + equalizeThreshold0_(iConfig.getParameter("equalizeThreshold0")), + equalizeThreshold1_(iConfig.getParameter("equalizeThreshold1")), + equalizeR_(iConfig.getParameter("equalizeR")), + isCalo_(iConfig.getParameter("isCalo")), + etaBins_(iConfig.getParameter("etaBins")), + fourierOrder_(iConfig.getParameter("fourierOrder")) +{ + + src_ = consumes(iConfig.getParameter("src")); + //register your products + + produces(); + produces >(); +} + + +VoronoiBackgroundProducer::~VoronoiBackgroundProducer() +{ +} + + +// +// member functions +// + +// ------------ method called to produce the data ------------ +void +VoronoiBackgroundProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) +{ + using namespace edm; + if(voronoi_ == 0){ + bool data = iEvent.isRealData(); + voronoi_ = new VoronoiAlgorithm(equalizeR_,data,isCalo_,std::pair(equalizeThreshold0_,equalizeThreshold1_),doEqualize_); + } + + voronoi_->clear(); + vvm.clear(); + + edm::Handle inputsHandle; + iEvent.getByToken(src_,inputsHandle); + + for(unsigned int i = 0; i < inputsHandle->size(); ++i){ + reco::CandidateViewRef ref(inputsHandle,i); + voronoi_->push_back_particle(ref->pt(),ref->eta(),ref->phi(),0); + } + + std::vector subtracted_momenta = voronoi_->subtracted_unequalized_perp(); + std::vector equalized_momenta = voronoi_->subtracted_equalized_perp(); + std::vector particle_area = voronoi_->particle_area(); + std::vector voronoi_vn = voronoi_->perp_fourier(); + std::auto_ptr > vnout(new std::vector(voronoi_vn.begin(), voronoi_vn.end())); + std::auto_ptr mapout(new reco::VoronoiMap()); + reco::VoronoiMap::Filler filler(*mapout); + + for(unsigned int i = 0; i < inputsHandle->size(); ++i){ + reco::CandidateViewRef ref(inputsHandle,i); + const double pre_eq_pt = subtracted_momenta[i]; + const double post_eq_pt = equalized_momenta[i]; + const double area = particle_area[i]; + const double mass_square = ref->massSqr(); + const double pre_eq_mt = sqrt(mass_square + pre_eq_pt * pre_eq_pt); + const double post_eq_mt = sqrt(mass_square + post_eq_pt * post_eq_pt); + + reco::VoronoiBackground bkg(pre_eq_pt,post_eq_pt,pre_eq_mt,post_eq_mt,area); + LogDebug("VoronoiBackgroundProducer")<<"Subtraction --- oldpt : "<pt()<<" --- newpt : "<("dropZeroTowers",true)), cbins_(0) { - centTag_ = iConfig.getUntrackedParameter("centTag",edm::InputTag("hiCentrality","","RECO")); + + centTag_ = iC.consumes(iConfig.getUntrackedParameter("centTag",edm::InputTag("hiCentrality","","RECO"))); interpolate_ = iConfig.getParameter("interpolate"); sumRecHits_ = iConfig.getParameter("sumRecHits"); @@ -51,7 +52,7 @@ void ParametrizedSubtractor::setupGeometryMap(edm::Event& iEvent,const edm::Even // if(!cbins_) getCentralityBinsFromDB(iSetup); edm::Handle cent; - iEvent.getByLabel(centTag_,cent); + iEvent.getByToken(centTag_,cent); centrality_ = cent->EtHFhitSum(); bin_ = 40-hC->FindBin(centrality_); diff --git a/RecoHI/HiJetAlgos/src/UEParameters.cc b/RecoHI/HiJetAlgos/src/UEParameters.cc new file mode 100644 index 0000000000000..6c78f226963d0 --- /dev/null +++ b/RecoHI/HiJetAlgos/src/UEParameters.cc @@ -0,0 +1,62 @@ + +#include "RecoHI/HiJetAlgos/interface/UEParameters.h" + +UEParameters::UEParameters(const std::vector *v, int nn, int neta) : v_(v), nn_(nn), neta_(neta){ + parameters_ = new boost::const_multi_array_ref(&(*v)[0], boost::extents[neta][nreduced_particle_flow_id][nn][2]); +} + +void UEParameters::get_fourier(double &re, double &im, size_t n, size_t eta, int type) const { + re = 0; + im = 0; + + if(type < 0){ + for (size_t i = 0; i < nreduced_particle_flow_id; i++) { + re += (*parameters_)[eta][i][n][0]; + im += (*parameters_)[eta][i][n][1]; + } + }else{ + re = (*parameters_)[eta][type][n][0]; + im = (*parameters_)[eta][type][n][1]; + } + +} + +double UEParameters::get_sum_pt(int eta, int type) const { + double re; + double im; + + get_fourier(re, im, 0, eta, type); + + // There is no imaginary part + return re; +} + +double UEParameters::get_vn(int n, int eta, int type) const { + if (n < 0) { + return NAN; + } + else if (n == 0) { + return 1; + } + + double re; + double im; + + get_fourier(re, im, n, eta, type); + + return sqrt(re * re + im * im) / get_sum_pt(eta, type); +} + +double UEParameters::get_psin(int n, int eta, int type) const { + if (n <= 0) { + return 0; + } + + double re; + double im; + + get_fourier(re, im, n, eta, type); + + return atan2(im, re) / n; +} + diff --git a/RecoHI/HiJetAlgos/src/VoronoiAlgorithm.cc b/RecoHI/HiJetAlgos/src/VoronoiAlgorithm.cc new file mode 100644 index 0000000000000..2df156395b72c --- /dev/null +++ b/RecoHI/HiJetAlgos/src/VoronoiAlgorithm.cc @@ -0,0 +1,1993 @@ +#include "RecoHI/HiJetAlgos/interface/VoronoiAlgorithm.h" + +extern "C" { + + extern struct ascal_s { + double objnor; + double rhsnor; + double scdiff; + int scpass; + int scalmet; + } ascal_; + + extern struct compl_s { + double climit; + double ccorr; + } compl_; + + extern struct dims_s { + int n; + int n1; + int m; + int mn; + int nz; + int cfree; + int pivotn; + int denwin; + int rfree; + } dims_; + + extern struct drop_s { + double tfixvar; + double tfixslack; + double slklim; + } drop_; + + extern struct factor_s { + double tpiv1; + double tpiv2; + double tabs; + double trabs; + double lam; + double tfind; + double order; + double supdens; + } factor_; + + extern struct initv_s { + double prmin; + double upmax; + double dumin; + int stamet; + int safmet; + int premet; + int regul; + } initv_; + + extern struct itref_s { + double tresx; + double tresy; + int maxref; + } itref_; + + extern struct mscal_s { + double varadd; + double slkadd; + double scfree; + } mscal_; + + extern struct numer_s { + double tplus; + double tzer; + } numer_; + + extern struct param_s { + double palpha; + double dalpha; + } param_; + + extern struct predc_s { + double target; + double tsmall; + double tlarge; + double center; + double corstp; + int mincc; + int maxcc; + } predc_; + + extern struct predp_s { + double ccstop; + double barset; + double bargrw; + double barmin; + int mincor; + int maxcor; + int inibar; + } predp_; + + extern struct setden_s { + double maxdense; + double densgap; + int setlam; + int denslen; + } setden_; + + extern struct sprnod_s { + int psupn; + int ssupn; + int maxsnz; + } sprnod_; + + extern struct toler_s { + double tsdir; + double topt1; + double topt2; + double tfeas1; + double tfeas2; + double feas1; + double feas2; + double pinfs; + double dinfs; + double inftol; + int maxiter; + } toler_; + + extern int solver_( + double *obj, double *rhs, double *lbound, double *ubound, + /* Size dims_.mn working arrays */ + double *diag, double *odiag, + /* Size dims_.mn primal values */ + double *xs, + /* Size dims_.mn working arrays */ + double *dxs, double *dxsn, double *up, + /* Size dims_.mn dual residuals */ + double *dspr, + /* Size dims_.mn working arrays */ + double *ddspr, double *ddsprn, double *dsup, double *ddsup, + double *ddsupn, + /* Size dims_.m dual values */ + double *dv, + /* Size dims_.m working arrays */ + double *ddv, double *ddvn, double *prinf, + /* Size dims_.mn working arrays */ + double *upinf, double *duinf, double *scale, + /* Size dims_.cfree nonzero values */ + double *nonzeros, + /* Size dims_.n working array */ + int *vartyp, + /* Size dims_.m working array */ + int *slktyp, + /* Size dims_.n1 column pointer */ + int *colpnt, + /* Size dims_.mn working arrays */ + int *ecolpnt, int *count, int *vcstat, int *pivots, + int *invprm, int *snhead, int *nodtyp, int *inta1, + int *prehis, + /* Size dims_.cfree row index */ + int *rowidx, + /* Size dims_.rfree working array */ + int *rindex, + /* Scalar termination code */ + int *code, + /* Scalar optimum value */ + double *opt, + int *iter, int *corect, int *fixn, int *dropn, int *fnzmax, + int *fnzmin, double *addobj, double *bigbou, + /* Practical +inf */ + double *big, + int *ft); +} + +namespace { + + class problem_t { + public: + static constexpr double infinity = INFINITY; + // These are equivalent to the constants used by IBM ILOG + // CPLEX + static const int minimize = 1; + static const int maximize = -1; + static const char less_equal = 'L'; + static const char equal = 'E'; + static const char greater_equal = 'G'; + static const char range = 'R'; + protected: + bool _optimized; + bool _variable_named; + + std::vector _rhs; + std::vector _constraint_sense; + std::vector _range_value; + std::vector _row_name; + + std::vector _objective; + std::vector _lower_bound; + std::vector _upper_bound; + std::vector _column_name; + + std::vector _coefficient_row; + std::vector _coefficient_column; + std::vector _coefficient_value; + + void clear_row(void) + { + _rhs.clear(); + _constraint_sense.clear(); + for (std::vector::const_iterator iterator = + _row_name.begin(); + iterator != _row_name.end(); iterator++) { + delete [] *iterator; + } + _row_name.clear(); + } + void clear_column(void) + { + _objective.clear(); + _lower_bound.clear(); + _upper_bound.clear(); + for (std::vector::const_iterator iterator = + _column_name.begin(); + iterator != _column_name.end(); iterator++) { + free(*iterator); + } + _column_name.clear(); + } + void clear_coefficient(void) + { + _coefficient_row.clear(); + _coefficient_column.clear(); + _coefficient_value.clear(); + } + void to_csr(std::vector &column_pointer, + std::vector &row_index, + std::vector &nonzero_value, + const int index_start = 1) + { + // Convert from coordinate (COO) storage into compressed + // sparse row (CSR) + + std::vector > > + column_index(_objective.size(), + std::vector >()); + + std::vector::const_iterator iterator_row = + _coefficient_row.begin(); + std::vector::const_iterator iterator_column = + _coefficient_column.begin(); + std::vector::const_iterator iterator_value = + _coefficient_value.begin(); + + for (; iterator_value != _coefficient_value.end(); + iterator_row++, iterator_column++, iterator_value++) { + column_index[*iterator_column].push_back( + std::pair( + // Conversion into Fortran indexing + *iterator_row + index_start, *iterator_value)); + } + + for (std::vector > >:: + iterator iterator_outer = column_index.begin(); + iterator_outer != column_index.end(); iterator_outer++) { + // Conversion into Fortran indexing + column_pointer.push_back(row_index.size() + index_start); + std::sort(iterator_outer->begin(), iterator_outer->end()); + for (std::vector >::const_iterator + iterator_inner = iterator_outer->begin(); + iterator_inner != iterator_outer->end(); + iterator_inner++) { + row_index.push_back(iterator_inner->first); + nonzero_value.push_back(iterator_inner->second); + } + } + // Conversion into Fortran indexing + column_pointer.push_back(row_index.size() + index_start); + } + public: + problem_t(const bool variable_named) + : _optimized(false), _variable_named(variable_named) + { + } + ~problem_t(void) + { + clear(); + } + void clear(void) + { + clear_row(); + clear_column(); + clear_coefficient(); + } + virtual int populate(void) = 0; + size_t nrow(void) const + { + return _rhs.size(); + } + size_t ncolumn(void) const + { + return _objective.size(); + } + void push_back_row(const char constraint_sense, + const double rhs) + { + _rhs.push_back(rhs); + _constraint_sense.push_back(constraint_sense); + + if (_variable_named) { + static const size_t name_length = 24; + char *name = new char[name_length]; + + snprintf(name, name_length, "c%llu", + static_cast(_rhs.size())); + _row_name.push_back(name); + } + } + void push_back_row(const std::string &constraint_sense, + const double rhs) + { + char cplex_sense; + + if (constraint_sense == "<=") { + cplex_sense = 'L'; + push_back_row(rhs, cplex_sense); + } + else if (constraint_sense == "==") { + cplex_sense = 'E'; + push_back_row(rhs, cplex_sense); + } + else if (constraint_sense == ">=") { + cplex_sense = 'G'; + push_back_row(rhs, cplex_sense); + } + else { + fprintf(stderr, "%s:%d: illegal sense (`%s')\n", + __FILE__, __LINE__, constraint_sense.c_str()); + } + } + void push_back_column(const double objective, + const double lower_bound, + const double upper_bound) + { + _objective.push_back(objective); + _lower_bound.push_back(lower_bound); + _upper_bound.push_back(upper_bound); + + if (_variable_named) { + static const size_t name_length = 24; + char *name = new char[name_length]; + + snprintf(name, name_length, "x%llu", + static_cast( + _objective.size())); + _column_name.push_back(name); + } + } + void push_back_coefficient( + const int row, const int column, const double value) + { + _coefficient_row.push_back(row); + _coefficient_column.push_back(column); + _coefficient_value.push_back(value); + } + virtual int optimize(void) = 0; + int optimize_primal_simplex(void) + { + return optimize(); + } + int optimize_dual_simplex(void) + { + return optimize(); + } + int optimize_barrier(void) + { + return optimize(); + } + int optimize_network(void) + { + return optimize(); + } + int optimize_sifting(void) + { + return optimize(); + } + int optimize_concurrent(void) + { + return optimize(); + } + int optimize_deterministic_concurrent(void) + { + return optimize(); + } + // + virtual int solve( + int &solution_status, double &objective_value, + std::vector &variable_primal, + std::vector &variable_dual, + std::vector &variable_slack_surplus, + std::vector &reduced_cost) = 0; + int solve( + double &objective_value, + std::vector &variable_primal, + std::vector &variable_dual, + std::vector &variable_slack_surplus, + std::vector &reduced_cost) + { + int solution_status; + + return solve(solution_status, objective_value, + variable_primal, variable_dual, + variable_slack_surplus, reduced_cost); + } + int solve( + std::vector &variable_primal, + std::vector &variable_dual, + std::vector &variable_slack_surplus, + std::vector &reduced_cost) + { + int solution_status; + double objective_value; + + return solve(solution_status, objective_value, + variable_primal, variable_dual, + variable_slack_surplus, reduced_cost); + } + virtual int solve( + int &solution_status, double &objective_value, + std::vector &variable_primal, + std::vector &variable_dual) + { + std::vector variable_slack_surplus; + std::vector reduced_cost; + + return solve(solution_status, objective_value, + variable_primal, variable_dual, + variable_slack_surplus, reduced_cost); + } + int solve( + std::vector &variable_primal, + std::vector &variable_dual) + { + int solution_status; + double objective_value; + + return solve(solution_status, objective_value, variable_primal, + variable_dual); + } + int solve( + std::vector &variable_primal) + { + std::vector variable_dual; + + return solve(variable_primal, variable_dual); + } + }; + + class environment_t { + protected: + std::vector _problem; + }; + +#ifndef BPMPD_INFINITY_BOUND +#define BPMPD_INFINITY_BOUND 1e+30 +#endif // BPMPD_INFINITY_BOUND + +#ifndef BPMPD_VERSION_STRING +#define BPMPD_VERSION_STRING "Version 2.11 (1996 December)" +#endif // BPMPD_VERSION_STRING + + class bpmpd_environment_t; + + class bpmpd_problem_t : public problem_t { + public: + static constexpr double infinity = BPMPD_INFINITY_BOUND; + protected: + double _objective_sense; + double _objective_value; + std::vector _variable_primal; + std::vector _variable_dual; + int _solution_status; + private: + int ampl_solution_status(const int termination_code) + { + switch (termination_code) { + // General memory limit (no solution) + case -2: return 520; + // Memory limit during iterations + case -1: return 510; + // No optimum + case 1: return 506; + // Optimal solution + case 2: return 0; + // Primal infeasible + case 3: return 503; + // Dual infeasible + case 4: return 503; + default: + fprintf(stderr, "%s:%d: error: unknown termination code " + "%d\n", __FILE__, __LINE__, termination_code); + return 500; + } + fprintf(stderr, "%s:%d: %d\n", __FILE__, __LINE__, + termination_code); + } + void set_bpmpd_parameter(void) + { + // Set the parameter as in subroutine BPMAIN + + setden_.maxdense = 0.15; + setden_.densgap = 3.00; + setden_.setlam = 0; + factor_.supdens = 250; + setden_.denslen = 10; + + mscal_.varadd = 1e-12; + mscal_.slkadd = 1e+16; + mscal_.scfree = 1.1e-6; + + factor_.tpiv1 = 1e-3; + factor_.tpiv2 = 1e-8; + factor_.tabs = 1e-12; + factor_.trabs = 1e-15; + factor_.lam = 1e-5; + factor_.tfind = 25; + factor_.order = 2; + + sprnod_.psupn = 3; + sprnod_.ssupn = 4; + sprnod_.maxsnz = 9999999; + + toler_.tsdir = 1e-16; + toler_.topt1 = 1e-8; + toler_.topt2 = 1e-16; + toler_.tfeas1 = 1e-7; + toler_.tfeas2 = 1e-7; + toler_.feas1 = 1e-2; + toler_.feas2 = 1e-2; + toler_.pinfs = 1e-6; + toler_.dinfs = 1e-6; + toler_.inftol = 1e+4; + toler_.maxiter = 99; + + numer_.tplus = 1e-11; + numer_.tzer = 1e-35; + + itref_.tresx = 1e-9; + itref_.tresy = 1e-9; + itref_.maxref = 5; + + ascal_.objnor = 1e+2; + ascal_.rhsnor = 0; + ascal_.scdiff = 1; + ascal_.scalmet = 2; + ascal_.scpass = 5; + + predp_.ccstop = 1.01; + predp_.barset = 2.50e-1; + predp_.bargrw = 1.00e+2; + predp_.barmin = 1.00e-10; + predp_.mincor = 1; + predp_.maxcor = 1; + predp_.inibar = 0; + + predc_.target = 9e-2; + predc_.tsmall = 2e-1; + predc_.tlarge = 2e+1; + predc_.center = 5; + predc_.corstp = 1.01; + predc_.mincc = 0; + predc_.maxcc = 9; + + param_.palpha = 0.999; + param_.dalpha = 0.999; + + drop_.tfixvar = 1e-16; + drop_.tfixslack = 1e-16; + drop_.slklim = 1e-16; + + initv_.prmin = 100; + initv_.upmax = 50000; + initv_.dumin = 100; + initv_.stamet = 2; + initv_.safmet = -3; + initv_.premet = 511; + initv_.regul = 0; + + compl_.climit = 1; + compl_.ccorr = 1e-5; + } + void append_constraint_sense_bound( + std::vector &lower_bound_bpmpd, + std::vector &upper_bound_bpmpd) + { + for (std::vector::const_iterator iterator = + _constraint_sense.begin(); + iterator != _constraint_sense.end(); iterator++) { + switch (*iterator) { + case less_equal: + lower_bound_bpmpd.push_back(-BPMPD_INFINITY_BOUND); + upper_bound_bpmpd.push_back(0); + break; + case equal: + lower_bound_bpmpd.push_back(0); + upper_bound_bpmpd.push_back(0); + break; + case greater_equal: + lower_bound_bpmpd.push_back(0); + upper_bound_bpmpd.push_back(BPMPD_INFINITY_BOUND); + break; + case range: + { + const size_t index = + iterator - _constraint_sense.begin(); + + lower_bound_bpmpd.push_back(0); + upper_bound_bpmpd.push_back(_range_value[index] - + _rhs[index]); + } + break; + } + } + lower_bound_bpmpd.reserve(dims_.mn); + lower_bound_bpmpd.insert(lower_bound_bpmpd.end(), + _lower_bound.begin(), + _lower_bound.end()); + upper_bound_bpmpd.reserve(dims_.mn); + upper_bound_bpmpd.insert(upper_bound_bpmpd.end(), + _upper_bound.begin(), + _upper_bound.end()); + } + protected: + int populate(void) + { + return 0; + } + public: + bpmpd_problem_t(void) + : problem_t(false), _objective_sense(1.0), + _objective_value(NAN) + { + } + inline size_t nrow(void) const + { + return dims_.m; + } + inline size_t ncolumn(void) const + { + return dims_.n; + } + inline void set_objective_sense(int sense) + { + _objective_sense = sense; + + // This will be multiplied to the objective coefficients + // (i.e. sign flip when sense = -1 for maximization) + } + inline void save(std::string filename) + { + // MPS save? + } + void push_back_column(const double objective, + const double lower_bound = 0, + const double upper_bound = BPMPD_INFINITY_BOUND) + { + problem_t::push_back_column(objective, lower_bound, + upper_bound); + } + void set_size(const size_t nonzero_value_size, + const double mf = 6.0, const size_t ma = 0) + { + dims_.n = _objective.size(); + dims_.m = _rhs.size(); + dims_.mn = dims_.m + dims_.n; + dims_.n1 = dims_.n + 1; + + dims_.nz = nonzero_value_size; + + // Adapted from the AMPL interface + // http://www.netlib.org/ampl/solvers/bpmpd/ + + const size_t rp_23 = 4 * dims_.m + 18 * dims_.mn; + + dims_.cfree = static_cast( + std::max(2.0, mf) * (rp_23 + dims_.nz)) + + std::max(static_cast(0), ma); + dims_.rfree = ((dims_.cfree + rp_23) >> 1) + 11 * dims_.m + + 8 * dims_.n; + } + int optimize(void) + { + // Usually referred to as the variable "IA" for the CSR format + std::vector column_pointer; + // Usually referred to as the variable "JA" for the CSR format + std::vector row_index; + // Usually referred to as the variable "A" for the CSR format + std::vector nonzero_value; + + to_csr(column_pointer, row_index, nonzero_value); + std::transform(_objective.begin(), _objective.end(), + _objective.begin(), + std::bind1st(std::multiplies(), + _objective_sense)); + + // Try 1x, 2x, and 4x the default memory allocation + for (size_t i = 0; i < 3; i++) { + set_size(nonzero_value.size(), 6.0 * (1 << i)); + + nonzero_value.resize(dims_.cfree); + row_index.resize(dims_.cfree); + + set_bpmpd_parameter(); + + std::vector diag(dims_.mn, 0); + std::vector odiag(dims_.mn, 0); + std::vector dxs(dims_.mn, 0); + std::vector dxsn(dims_.mn, 0); + std::vector up(dims_.mn, 0); + std::vector dual_residual(dims_.mn, 0); + std::vector ddspr(dims_.mn, 0); + std::vector ddsprn(dims_.mn, 0); + std::vector dsup(dims_.mn, 0); + std::vector ddsup(dims_.mn, 0); + std::vector ddsupn(dims_.mn, 0); + std::vector ddv(dims_.m, 0); + std::vector ddvn(dims_.m, 0); + std::vector prinf(dims_.m, 0); + std::vector upinf(dims_.mn, 0); + std::vector duinf(dims_.mn, 0); + std::vector scale(dims_.mn, 0); + std::vector vartyp(dims_.n, 0); + std::vector slktyp(dims_.m, 0); + std::vector colpnt(dims_.n1, 0); + std::vector ecolpnt(dims_.mn, 0); + std::vector count(dims_.mn, 0); + std::vector vcstat(dims_.mn, 0); + std::vector pivots(dims_.mn, 0); + std::vector invprm(dims_.mn, 0); + std::vector snhead(dims_.mn, 0); + std::vector nodtyp(dims_.mn, 0); + std::vector inta1(dims_.mn, 0); + std::vector prehis(dims_.mn, 0); + std::vector rindex(dims_.rfree, 0); + int termination_code; + int iter; + int correct; + int fixn; + int dropn; + int fnzmax = 0; + int fnzmin = -1; + double addobj = 0; + // Numerical limit of bounds to be ignored + double bigbou = 1e+15; + double infinity_copy = BPMPD_INFINITY_BOUND; + int ft; + + _variable_primal.resize(dims_.mn); + _variable_dual.resize(dims_.m); + + std::vector lower_bound_bpmpd = _lower_bound; + std::vector upper_bound_bpmpd = _upper_bound; + + append_constraint_sense_bound(lower_bound_bpmpd, + upper_bound_bpmpd); + + solver_(&_objective[0], &_rhs[0], &lower_bound_bpmpd[0], + &upper_bound_bpmpd[0], &diag[0], &odiag[0], + &_variable_primal[0], &dxs[0], &dxsn[0], &up[0], + &dual_residual[0], &ddspr[0], &ddsprn[0], + &dsup[0], &ddsup[0], &ddsupn[0], + &_variable_dual[0], &ddv[0], &ddvn[0], &prinf[0], + &upinf[0], &duinf[0], &scale[0], + &nonzero_value[0], &vartyp[0], &slktyp[0], + &column_pointer[0], &ecolpnt[0], &count[0], + &vcstat[0], &pivots[0], &invprm[0], &snhead[0], + &nodtyp[0], &inta1[0], &prehis[0], &row_index[0], + &rindex[0], &termination_code, &_objective_value, + &iter, &correct, &fixn, &dropn, &fnzmax, &fnzmin, + &addobj, &bigbou, &infinity_copy, &ft); + + _objective_value *= _objective_sense; + _solution_status = ampl_solution_status(termination_code); + if (termination_code != -2) { + // No out-of-memory errors + break; + } + } + + return _solution_status == 0 ? 0 : 1; + } + int solve( + int &solution_status, double &objective_value, + std::vector &variable_primal, + std::vector &variable_dual, + std::vector &variable_slack_surplus, + std::vector &reduced_cost) + { + // This set of solution is not implemented yet (or readily + // available from BPMPD) + + return 1; + } + int solve( + int &solution_status, double &objective_value, + std::vector &variable_primal, + std::vector &variable_dual) + { + variable_primal = std::vector( + _variable_primal.begin(), + _variable_primal.begin() + _objective.size()); + variable_dual = _variable_dual; + + return 0; + } + friend class bpmpd_environment_t; + }; + + class bpmpd_environment_t : public environment_t { + public: + bpmpd_environment_t(void) + { + } + ~bpmpd_environment_t(void) + { + } + int set_verbose(void); + int set_data_checking(void); + inline std::string version_str(void) const + { + return BPMPD_VERSION_STRING; + } + bpmpd_problem_t problem(std::string name = "") + { + return bpmpd_problem_t(); + } + }; + +} + +namespace { + + double angular_range_reduce(const double x) + { + if (!std::isfinite(x)) { + return NAN; + } + + static const double cody_waite_x_max = 1608.4954386379741381; + static const double two_pi_0 = 6.2831853071795649157; + static const double two_pi_1 = 2.1561211432631314669e-14; + static const double two_pi_2 = 1.1615423895917441336e-27; + double ret; + + if (x >= -cody_waite_x_max && x <= cody_waite_x_max) { + static const double inverse_two_pi = + 0.15915494309189534197; + const double k = rint(x * inverse_two_pi); + ret = ((x - (k * two_pi_0)) - k * two_pi_1) - + k * two_pi_2; + } + else { + long double sin_x; + long double cos_x; + + sincosl(x, &sin_x, &cos_x); + ret = (double)atan2l(sin_x, cos_x); + } + if (ret == -M_PI) { + ret = M_PI; + } + + return ret; + } + + + size_t pf_id_reduce(const int pf_id) + { + // Particle::pdgId_ PFCandidate::particleId_ + // PFCandidate::ParticleType Particle + // 0 0 X unknown, or dummy + // +211, -211 1 h charged hadron + // +11, -11 2 e electron + // +13, -13 3 mu muon + // 22 4 gamma photon + // 130 5 h0 neutral hadron + // 130 6 h_HF hadronic energy in an HF tower + // 22 7 egamma_HF electromagnetic energy in an HF tower + + if (pf_id == 4) { + return 1; + } + else if (pf_id >= 5 && pf_id <= 7) { + return 2; + } + + return 0; + } + +} + + void VoronoiAlgorithm::initialize_geometry(void) + { + static const size_t ncms_hcal_edge_pseudorapidity = 82 + 1; + static const double cms_hcal_edge_pseudorapidity[ + ncms_hcal_edge_pseudorapidity] = { + -5.191, -4.889, -4.716, -4.538, -4.363, -4.191, -4.013, + -3.839, -3.664, -3.489, -3.314, -3.139, -2.964, -2.853, + -2.650, -2.500, -2.322, -2.172, -2.043, -1.930, -1.830, + -1.740, -1.653, -1.566, -1.479, -1.392, -1.305, -1.218, + -1.131, -1.044, -0.957, -0.879, -0.783, -0.696, -0.609, + -0.522, -0.435, -0.348, -0.261, -0.174, -0.087, + 0.000, + 0.087, 0.174, 0.261, 0.348, 0.435, 0.522, 0.609, + 0.696, 0.783, 0.879, 0.957, 1.044, 1.131, 1.218, + 1.305, 1.392, 1.479, 1.566, 1.653, 1.740, 1.830, + 1.930, 2.043, 2.172, 2.322, 2.500, 2.650, 2.853, + 2.964, 3.139, 3.314, 3.489, 3.664, 3.839, 4.013, + 4.191, 4.363, 4.538, 4.716, 4.889, 5.191 + }; + + _cms_hcal_edge_pseudorapidity = std::vector( + cms_hcal_edge_pseudorapidity, + cms_hcal_edge_pseudorapidity + + ncms_hcal_edge_pseudorapidity); + + static const size_t ncms_ecal_edge_pseudorapidity = 344 + 1; + + for (size_t i = 0; i < ncms_ecal_edge_pseudorapidity; i++) { + _cms_ecal_edge_pseudorapidity.push_back( + i * (2 * 2.9928 / + (ncms_ecal_edge_pseudorapidity - 1)) - + 2.9928); + } + } + void VoronoiAlgorithm::allocate(void) + { + _perp_fourier = new boost::multi_array( + boost::extents[_edge_pseudorapidity.size() - 1] + [nreduced_particle_flow_id][nfourier][2]); + } + void VoronoiAlgorithm::deallocate(void) + { + delete _perp_fourier; + } + void VoronoiAlgorithm::event_fourier(void) + { + std::fill(_perp_fourier->data(), + _perp_fourier->data() + + _perp_fourier->num_elements(), + 0); + + for (std::vector::const_iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + const unsigned int reduced_id = + iterator->reduced_particle_flow_id; + + for (size_t k = 1; k < _edge_pseudorapidity.size(); + k++) { + if (iterator->momentum.Eta() >= + _edge_pseudorapidity[k - 1] && + iterator->momentum.Eta() < + _edge_pseudorapidity[k]) { + const double azimuth = + iterator->momentum.Phi(); + + for (size_t l = 0; l < nfourier; l++) { + (*_perp_fourier)[k - 1][reduced_id] + [l][0] += + iterator->momentum.Pt() * + cos(l * azimuth); + (*_perp_fourier)[k - 1][reduced_id] + [l][1] += + iterator->momentum.Pt() * + sin(l * azimuth); + } + } + } + } + } + void VoronoiAlgorithm::feature_extract(void) + { + const size_t nfeature = 2 * nfourier - 1; + + _feature.resize(nfeature); + + // Scale factor to get 95% of the coefficient below 1.0 + // (where however one order of magnitude tolerance is + // acceptable). This is valid for nfourier < 18 (where + // interference behavior with the HF geometry starts to + // appear) + + std::vector scale(nfourier, 1.0 / 200.0); + + if (nfourier >= 1) { + scale[0] = 1.0 / 5400.0; + } + if (nfourier >= 2) { + scale[1] = 1.0 / 130.0; + } + if (nfourier >= 3) { + scale[2] = 1.0 / 220.0; + } + + const size_t index_edge_end = + _edge_pseudorapidity.size() - 2; + + _feature[0] = 0; + for (size_t j = 0; j < nreduced_particle_flow_id; j++) { + _feature[0] += scale[0] * + ((*_perp_fourier)[0 ][j][0][0] + + (*_perp_fourier)[index_edge_end][j][0][0]); + } + + for (size_t k = 1; k < nfourier; k++) { + _feature[2 * k - 1] = 0; + for (size_t j = 0; j < nreduced_particle_flow_id; j++) { + _feature[2 * k - 1] += scale[k] * + ((*_perp_fourier)[0 ][j][k][0] + + (*_perp_fourier)[index_edge_end][j][k][0]); + } + _feature[2 * k] = 0; + for (size_t j = 0; j < nreduced_particle_flow_id; j++) { + _feature[2 * k] += scale[k] * + ((*_perp_fourier)[0 ][j][k][1] + + (*_perp_fourier)[index_edge_end][j][k][1]); + } + } + + +#if 0 + const double event_plane = atan2(_feature[4], _feature[3]); + const double v2 = + sqrt(_feature[3] * _feature[3] + + _feature[4] * _feature[4]) / _feature[0]; +#endif + } + void VoronoiAlgorithm::voronoi_area_incident(void) + { + // Make the Voronoi diagram + + voronoi_diagram_t diagram; + + // Reverse Voronoi face lookup +#ifdef HAVE_SPARSEHASH + // The "empty" or default value of the hash table + const voronoi_diagram_t::Face face_empty; + google::dense_hash_map > + face_index; + + face_index.set_empty_key(face_empty); +#else // HAVE_SPARSEHASH + std::map + face_index; +#endif // HAVE_SPARSEHASH + + for (std::vector::const_iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + // Make two additional replicas with azimuth +/- 2 pi + // (and use only the middle) to mimick the azimuthal + // cyclicity + for (int k = -1; k <= 1; k++) { + const point_2d_t p( + iterator->momentum.Eta(), + iterator->momentum.Phi() + + k * (2 * M_PI)); + const voronoi_diagram_t::Face_handle handle = + diagram.insert(p); + + face_index[handle] = iterator - _event.begin(); + } + } + + // Extract the Voronoi cells as polygon and calculate the + // area associated with individual particles + + for (std::vector::iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + const voronoi_diagram_t::Locate_result result = + diagram.locate(*iterator); + const voronoi_diagram_t::Face_handle *face = + boost::get( + &result); + double polygon_area; + + if (face != NULL) { + voronoi_diagram_t::Ccb_halfedge_circulator + circulator_start = (*face)->outer_ccb(); + bool unbounded = false; + polygon_t polygon; + + voronoi_diagram_t::Ccb_halfedge_circulator + circulator = circulator_start; + + // Circle around the edges and extract the polygon + // vertices + do { + if (circulator->has_target()) { + polygon.push_back( + circulator->target()->point()); + _event[face_index[*face]].incident. + insert( + _event.begin() + + face_index[circulator->twin()-> + face()]); + } + else { + unbounded = true; + break; + } + } + while (++circulator != circulator_start); + if (unbounded) { + polygon_area = INFINITY; + } + else { + polygon_area = polygon.area(); + } + } + else { + polygon_area = NAN; + } + iterator->area = fabs(polygon_area); + } + } + void VoronoiAlgorithm::subtract_momentum(void) + { + for (std::vector::iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + int predictor_index = -1; + int interpolation_index = -1; + double density = 0; + double pred_0 = 0; + + for (size_t l = 1; l < _edge_pseudorapidity.size(); l++) { + if (iterator->momentum.Eta() >= + _edge_pseudorapidity[l - 1] && + iterator->momentum.Eta() < + _edge_pseudorapidity[l]) { + predictor_index = l - 1; + } + } + + for (size_t j = 0; j < nreduced_particle_flow_id; j++) { + if (j == 2) { + // HCAL + for (size_t l = 1; + l < _cms_hcal_edge_pseudorapidity.size(); l++) { + if (iterator->momentum.Eta() >= + _cms_hcal_edge_pseudorapidity[l - 1] && + iterator->momentum.Eta() < + _cms_hcal_edge_pseudorapidity[l]) { + interpolation_index = l - 1; + } + } + } + else { + // Tracks or ECAL clusters + for (size_t l = 1; + l < _cms_ecal_edge_pseudorapidity.size(); l++) { + if (iterator->momentum.Eta() >= + _cms_ecal_edge_pseudorapidity[l - 1] && + iterator->momentum.Eta() < + _cms_ecal_edge_pseudorapidity[l]) { + interpolation_index = l - 1; + } + } + } + + if (predictor_index >= 0 && interpolation_index >= 0) { + // Calculate the aggregated prediction and + // interpolation for the pseudorapidity segment + + const double azimuth = iterator->momentum.Phi(); + const float (*p)[2][82] = +#ifdef STANDALONE + ue_predictor_pf[j][predictor_index] +#else // STANDALONE + ue->ue_predictor_pf[j][predictor_index] +#endif // STANDALONE + ; + double pred = 0; + + for (size_t l = 0; l < nfourier; l++) { + for (size_t m = 0; m < 2; m++) { + float u = p[l][m][0]; + + for (size_t n = 0; n < 2 * nfourier - 1; n++) { + u += (((((((((p[l][m][9 * n + 9]) * + _feature[n] + + p[l][m][9 * n + 8]) * + _feature[n] + + p[l][m][9 * n + 7]) * + _feature[n] + + p[l][m][9 * n + 6]) * + _feature[n] + + p[l][m][9 * n + 5]) * + _feature[n] + + p[l][m][9 * n + 4]) * + _feature[n] + + p[l][m][9 * n + 3]) * + _feature[n] + + p[l][m][9 * n + 2]) * + _feature[n] + + p[l][m][9 * n + 1]) * + _feature[n]; + } + + pred += u * (l == 0 ? 1.0 : 2.0) * + (m == 0 ? cos(l * azimuth) : + sin(l * azimuth)); + if (l == 0 && m == 0) { + pred_0 += u / + (2.0 * M_PI * + (_edge_pseudorapidity[predictor_index + 1] - + _edge_pseudorapidity[predictor_index])); + } + } + } + + double interp; + +#ifdef STANDALONE + if (j == 0) { + interp = + ue_interpolation_pf0[predictor_index][ + interpolation_index]; + } + else if (j == 1) { + interp = + ue_interpolation_pf1[predictor_index][ + interpolation_index]; + } + else if (j == 2) { + interp = + ue_interpolation_pf2[predictor_index][ + interpolation_index]; + } +#else // STANDALONE + if (j == 0) { + interp = + ue->ue_interpolation_pf0[predictor_index][ + interpolation_index]; + } + else if (j == 1) { + interp = + ue->ue_interpolation_pf1[predictor_index][ + interpolation_index]; + } + else if (j == 2) { + interp = + ue->ue_interpolation_pf2[predictor_index][ + interpolation_index]; + } +#endif // STANDALONE + // Interpolate down to the finely binned + // pseudorapidity + + density += pred / + (2.0 * M_PI * + (_edge_pseudorapidity[predictor_index + 1] - + _edge_pseudorapidity[predictor_index])) * + interp; + } + } + + if (std::isfinite(iterator->area) && density >= 0) { + // Subtract the PF candidate by density times + // Voronoi cell area + iterator->momentum_perp_subtracted = + iterator->momentum.Pt() - + density * iterator->area; + } + else { + iterator->momentum_perp_subtracted = + iterator->momentum.Pt(); + } + iterator->momentum_perp_subtracted_unequalized = + iterator->momentum_perp_subtracted; + } + } + void VoronoiAlgorithm::recombine_link(void) + { + boost::multi_array radial_distance_square( + boost::extents[_event.size()][_event.size()]); + + for (std::vector::const_iterator + iterator_outer = _event.begin(); + iterator_outer != _event.end(); iterator_outer++) { + radial_distance_square + [iterator_outer - _event.begin()] + [iterator_outer - _event.begin()] = 0; + + for (std::vector::const_iterator + iterator_inner = _event.begin(); + iterator_inner != iterator_outer; + iterator_inner++) { + const double deta = iterator_outer->momentum.Eta() - + iterator_inner->momentum.Eta(); + const double dphi = angular_range_reduce( + iterator_outer->momentum.Phi() - + iterator_inner->momentum.Phi()); + + radial_distance_square + [iterator_outer - _event.begin()] + [iterator_inner - _event.begin()] = + deta * deta + dphi * dphi; + radial_distance_square + [iterator_inner - _event.begin()] + [iterator_outer - _event.begin()] = + radial_distance_square + [iterator_outer - _event.begin()] + [iterator_inner - _event.begin()]; + } + } + + _active.clear(); + + for (std::vector::const_iterator + iterator_outer = _event.begin(); + iterator_outer != _event.end(); iterator_outer++) { + double incident_area_sum = iterator_outer->area; + + for (std::set::iterator>:: + const_iterator iterator_inner = + iterator_outer->incident.begin(); + iterator_inner != + iterator_outer->incident.end(); + iterator_inner++) { + incident_area_sum += (*iterator_inner)->area; + } + _active.push_back(incident_area_sum < 2.0); + } + + _recombine.clear(); + _recombine_index = std::vector >( + _event.size(), std::vector()); + _recombine_unsigned = std::vector >( + _event.size(), std::vector()); + _recombine_tie.clear(); + + // 36 cells corresponds to ~ 3 layers, note that for + // hexagonal tiling, cell in proximity = 3 * layer * + // (layer + 1) + static const size_t npair_max = 36; + + for (size_t i = 0; i < _event.size(); i++) { + for (size_t j = 0; j < _event.size(); j++) { + const bool active_i_j = _active[i] && _active[j]; + const size_t incident_count = + _event[i].incident.count(_event.begin() + j) + + _event[j].incident.count(_event.begin() + i); + + if (active_i_j && + (radial_distance_square[i][j] < + _radial_distance_square_max || + incident_count > 0)) { + _recombine_unsigned[i].push_back(j); + } + } + + if (_event[i].momentum_perp_subtracted < 0) { + std::vector radial_distance_square_list; + + for (std::vector::const_iterator iterator = + _recombine_unsigned[i].begin(); + iterator != _recombine_unsigned[i].end(); + iterator++) { + const size_t j = *iterator; + + if (_event[j].momentum_perp_subtracted > 0) { + radial_distance_square_list.push_back( + radial_distance_square[i][j]); + } + } + + double radial_distance_square_max_equalization_cut = + _radial_distance_square_max; + + if (radial_distance_square_list.size() >= npair_max) { + std::sort(radial_distance_square_list.begin(), + radial_distance_square_list.end()); + radial_distance_square_max_equalization_cut = + radial_distance_square_list[npair_max - 1]; + } + + for (std::vector::const_iterator iterator = + _recombine_unsigned[i].begin(); + iterator != _recombine_unsigned[i].end(); + iterator++) { + const size_t j = *iterator; + + if (_event[j].momentum_perp_subtracted > 0 && + radial_distance_square[i][j] < + radial_distance_square_max_equalization_cut) { + _recombine_index[j].push_back( + _recombine.size()); + _recombine_index[i].push_back( + _recombine.size()); + _recombine.push_back( + std::pair(i, j)); + _recombine_tie.push_back( + radial_distance_square[i][j] / + _radial_distance_square_max); + } + } + } + } + } + void VoronoiAlgorithm::lp_populate(void *lp_problem) + { + bpmpd_problem_t *p = reinterpret_cast(lp_problem); + + // The minimax problem is transformed into the LP notation + // using the cost variable trick: + // + // Minimize c + // Subject to: + // c + sum_l t_kl + n_k >= 0 for negative cells n_k + // c - sum_k t_kl + p_l >= 0 for positive cells p_l + + // Common LP mistakes during code development and their + // CPLEX errors when running CPLEX in data checking mode: + // + // Error 1201 (column index ... out of range): Bad column + // indexing, usually index_column out of bound for the + // cost variables. + // + // Error 1222 (duplicate entry): Forgetting to increment + // index_row, or index_column out of bound for the cost + // variables. + + p->set_objective_sense(bpmpd_problem_t::minimize); + + // Rows (RHS of the constraints) of the LP problem + + static const size_t nsector_azimuth = 12; + + // Approximatively 2 pi / nsector_azimuth segmentation of + // the CMS HCAL granularity + + static const size_t ncms_hcal_edge_pseudorapidity = 19 + 1; + static const double cms_hcal_edge_pseudorapidity[ + ncms_hcal_edge_pseudorapidity] = { + -5.191, -4.538, -4.013, + -3.489, -2.853, -2.322, -1.830, -1.305, -0.783, -0.261, + 0.261, 0.783, 1.305, 1.830, 2.322, 2.853, 3.489, + 4.013, 4.538, 5.191 + }; + + size_t nedge_pseudorapidity; + const double *edge_pseudorapidity; + + nedge_pseudorapidity = ncms_hcal_edge_pseudorapidity; + edge_pseudorapidity = cms_hcal_edge_pseudorapidity; + + const size_t nsuperblock = (nedge_pseudorapidity - 2) * + nsector_azimuth; + + size_t index_row = 0; + for (size_t index_pseudorapidity = 0; + index_pseudorapidity < nedge_pseudorapidity - 2; + index_pseudorapidity++) { + for (size_t index_azimuth = 0; + index_azimuth < nsector_azimuth - 1; + index_azimuth++) { + const size_t index_column = + index_pseudorapidity * nsector_azimuth + + index_azimuth; + p->push_back_row( + bpmpd_problem_t::greater_equal, 0); + p->push_back_coefficient( + index_row, index_column, 1); + p->push_back_coefficient( + index_row, nsuperblock + index_column, -1); + index_row++; + p->push_back_row( + bpmpd_problem_t::greater_equal, 0); + p->push_back_coefficient( + index_row, index_column, 1); + p->push_back_coefficient( + index_row, nsuperblock + index_column + 1, -1); + index_row++; + p->push_back_row( + bpmpd_problem_t::greater_equal, 0); + p->push_back_coefficient( + index_row, index_column, 1); + p->push_back_coefficient( + index_row, + nsuperblock + index_column + nsector_azimuth, -1); + index_row++; + p->push_back_row( + bpmpd_problem_t::greater_equal, 0); + p->push_back_coefficient( + index_row, index_column, 1); + p->push_back_coefficient( + index_row, + nsuperblock + index_column + nsector_azimuth + 1, + -1); + index_row++; + } + const size_t index_column = + index_pseudorapidity * nsector_azimuth + + nsector_azimuth - 1; + p->push_back_row( + bpmpd_problem_t::greater_equal, 0); + p->push_back_coefficient( + index_row, index_column, 1); + p->push_back_coefficient( + index_row, nsuperblock + index_column, -1); + index_row++; + p->push_back_row( + bpmpd_problem_t::greater_equal, 0); + p->push_back_coefficient( + index_row, index_column, 1); + p->push_back_coefficient( + index_row, + nsuperblock + index_column - (nsector_azimuth - 1), + -1); + index_row++; + p->push_back_row( + bpmpd_problem_t::greater_equal, 0); + p->push_back_coefficient( + index_row, index_column, 1); + p->push_back_coefficient( + index_row, + nsuperblock + index_column + nsector_azimuth, -1); + index_row++; + p->push_back_row( + bpmpd_problem_t::greater_equal, 0); + p->push_back_coefficient( + index_row, index_column, 1); + p->push_back_coefficient( + index_row, + nsuperblock + index_column + nsector_azimuth - + (nsector_azimuth - 1), + -1); + index_row++; + } + + const size_t nstaggered_block = + (nedge_pseudorapidity - 1) * nsector_azimuth; + const size_t nblock = nsuperblock + 2 * nstaggered_block; + + _nblock_subtract = std::vector(_event.size(), 0); + + std::vector + positive_index(_event.size(), _event.size()); + size_t positive_count = 0; + + for (std::vector::const_iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + if (iterator->momentum_perp_subtracted >= 0) { + positive_index[iterator - _event.begin()] = + positive_count; + positive_count++; + } + } + + _ncost = nblock + positive_count; + + const double sum_unequalized_0 = _equalization_threshold.first; + const double sum_unequalized_1 = (2.0 / 3.0) * _equalization_threshold.first + (1.0 / 3.0) * _equalization_threshold.second; + const double sum_unequalized_2 = (1.0 / 3.0) * _equalization_threshold.first + (2.0 / 3.0) * _equalization_threshold.second; + const double sum_unequalized_3 = _equalization_threshold.second; + + std::vector::const_iterator + iterator_particle = _event.begin(); + std::vector::const_iterator iterator_active = + _active.begin(); + std::vector >::const_iterator + iterator_recombine_index_outer = + _recombine_index.begin(); + std::vector >::const_iterator + iterator_recombine_unsigned_outer = + _recombine_unsigned.begin(); + size_t index_column_max = _ncost - 1; + for (; iterator_particle != _event.end(); + iterator_particle++, iterator_active++, + iterator_recombine_index_outer++, + iterator_recombine_unsigned_outer++) { + if (*iterator_active) { + int index_pseudorapidity = -1; + +///////////////////////////////////////////////////////////////////// + for (size_t i = 1; i < nedge_pseudorapidity; i++) { + if (iterator_particle->momentum.Eta() >= edge_pseudorapidity[i - 1] && + iterator_particle->momentum.Eta() < edge_pseudorapidity[i]) { + index_pseudorapidity = i - 1; + } + } + + const int index_azimuth = floor( + (iterator_particle->momentum.Phi() + M_PI) * + ((nsector_azimuth >> 1) / M_PI)); + + if (index_pseudorapidity != -1) { + // p_i - sum t - u = c_i + // or: c_i + u + sum_t = p_i + // n_i + sum t - u <= 0 + // or: u - sum_t >= n_i + + // Inequality RHS + p->push_back_row( + iterator_particle->momentum_perp_subtracted >= 0 ? + bpmpd_problem_t::equal : + bpmpd_problem_t::greater_equal, + iterator_particle->momentum_perp_subtracted); + + // Energy transfer coefficients t_kl + const double sign = iterator_particle->momentum_perp_subtracted >= 0 ? 1 : -1; + const size_t index_column_block_subtract = + nsuperblock + + (nedge_pseudorapidity - 1) * nsector_azimuth + + index_pseudorapidity * nsector_azimuth + + index_azimuth; + + _nblock_subtract[iterator_particle - _event.begin()] = + index_column_block_subtract; + + if (iterator_particle->momentum_perp_subtracted >= 0) { + const size_t index_column_cost = + nblock + positive_index[iterator_particle - _event.begin()]; + + p->push_back_coefficient( + index_row, index_column_cost, 1); + index_column_max = + std::max(index_column_max, index_column_cost); + } + p->push_back_coefficient( + index_row, index_column_block_subtract, 1); + index_column_max = + std::max(index_column_max, index_column_block_subtract); + + for (std::vector::const_iterator + iterator_recombine_index_inner = + iterator_recombine_index_outer->begin(); + iterator_recombine_index_inner != + iterator_recombine_index_outer->end(); + iterator_recombine_index_inner++) { + const size_t index_column = + *iterator_recombine_index_inner + + _ncost; + + p->push_back_coefficient( + index_row, index_column, sign); + index_column_max = + std::max(index_column_max, index_column); + } + index_row++; + + const size_t index_column_block = + nsuperblock + + index_pseudorapidity * nsector_azimuth + + index_azimuth; + + // sum_R c_i - o_i >= -d + // or: d + sum_R c_i >= o_i + // sum_R c_i - o_i <= d + // or: d - sum_R c_i >= -o_i + + double sum_unequalized; + + sum_unequalized = 0; + for (std::vector::const_iterator + iterator_recombine_unsigned_inner = + iterator_recombine_unsigned_outer->begin(); + iterator_recombine_unsigned_inner != + iterator_recombine_unsigned_outer->end(); + iterator_recombine_unsigned_inner++) { + sum_unequalized += + _event[*iterator_recombine_unsigned_inner].momentum_perp_subtracted; + } + sum_unequalized = std::max(0.0, sum_unequalized); + + if (sum_unequalized >= sum_unequalized_3 || + (sum_unequalized >= sum_unequalized_2 && + (iterator_particle - _event.begin()) % 2 == 0) || + (sum_unequalized >= sum_unequalized_1 && + (iterator_particle - _event.begin()) % 4 == 0) || + (sum_unequalized >= sum_unequalized_0 && + (iterator_particle - _event.begin()) % 8 == 0)) { + + const double weight = sum_unequalized * + std::min(1.0, std::max(1e-3, + iterator_particle->area)); + + if (weight > 0) { + p->push_back_row( + bpmpd_problem_t::greater_equal, + sum_unequalized); + + p->push_back_coefficient( + index_row, index_column_block, 1.0 / weight); + + for (std::vector::const_iterator + iterator_recombine_unsigned_inner = + iterator_recombine_unsigned_outer->begin(); + iterator_recombine_unsigned_inner != + iterator_recombine_unsigned_outer->end(); + iterator_recombine_unsigned_inner++) { + if (_event[*iterator_recombine_unsigned_inner].momentum_perp_subtracted >= 0) { + const size_t index_column_cost = + nblock + + positive_index[*iterator_recombine_unsigned_inner]; + + p->push_back_coefficient( + index_row, index_column_cost, 1); + index_column_max = + std::max(index_column_max, index_column_cost); + } + } + index_row++; + + p->push_back_row( + bpmpd_problem_t::greater_equal, + -sum_unequalized); + + p->push_back_coefficient( + index_row, index_column_block, _positive_bound_scale / weight); + + for (std::vector::const_iterator iterator_recombine_unsigned_inner = iterator_recombine_unsigned_outer->begin(); + iterator_recombine_unsigned_inner != iterator_recombine_unsigned_outer->end(); + iterator_recombine_unsigned_inner++) { + if (_event[*iterator_recombine_unsigned_inner].momentum_perp_subtracted >= 0) { + const size_t index_column_cost = + nblock + + positive_index[*iterator_recombine_unsigned_inner]; + + p->push_back_coefficient( + index_row, index_column_cost, -1); + index_column_max = + std::max(index_column_max, index_column_cost); + } + } + index_row++; + } + + } + + } + } + } + + // Epsilon that breaks the degeneracy, in the same units + // as the pT of the event (i.e. GeV) + static const double epsilon_degeneracy = 1e-2; + + // Columns (variables and the objective coefficients) of + // the LP problem + // + // Cost variables (objective coefficient 1) + for (size_t i = 0; i < nsuperblock; i++) { + p->push_back_column( + 1, 0, bpmpd_problem_t::infinity); + } + for (size_t i = nsuperblock; i < nsuperblock + nstaggered_block; i++) { + p->push_back_column( + 0, 0, bpmpd_problem_t::infinity); + } + for (size_t i = nsuperblock + nstaggered_block; i < nsuperblock + 2 * nstaggered_block; i++) { + p->push_back_column( + 0, 0, bpmpd_problem_t::infinity); + } + for (size_t i = nsuperblock + 2 * nstaggered_block; i < _ncost; i++) { + p->push_back_column( + 0, 0, bpmpd_problem_t::infinity); + } + //fprintf(stderr, "%s:%d: %lu %lu\n", __FILE__, __LINE__, index_column_max, recombine_tie.size()); + // Energy transfer coefficients t_kl (objective + // coefficient 0 + epsilon) + for (size_t i = _ncost; i <= index_column_max; i++) { + p->push_back_column( + epsilon_degeneracy * _recombine_tie[i - _ncost], + 0, bpmpd_problem_t::infinity); + } + } + void VoronoiAlgorithm::equalize(void) + { + bpmpd_problem_t lp_problem = reinterpret_cast(_lp_environment)->problem(); + + recombine_link(); + lp_populate(&lp_problem); + lp_problem.optimize(); + + int solution_status; + double objective_value; + std::vector x; + std::vector pi; + + lp_problem.solve(solution_status, objective_value, + x, pi); + + for (size_t k = _ncost; k < x.size(); k++) { + if (_event[_recombine[k - _ncost].first]. + momentum_perp_subtracted < 0 && + _event[_recombine[k - _ncost].second]. + momentum_perp_subtracted >= 0 && x[k] >= 0) { + _event[_recombine[k - _ncost].first]. + momentum_perp_subtracted += x[k]; + _event[_recombine[k - _ncost].second]. + momentum_perp_subtracted -= x[k]; + } + } + for (size_t k = 0; k < _event.size(); k++) { + if (_nblock_subtract[k] != 0 && + x[_nblock_subtract[k]] >= 0) { + _event[k].momentum_perp_subtracted -= + x[_nblock_subtract[k]]; + } + } + } + void VoronoiAlgorithm::remove_nonpositive(void) + { + for (std::vector::iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + iterator->momentum_perp_subtracted = std::max( + 0.0, iterator->momentum_perp_subtracted); + } + } + void VoronoiAlgorithm::subtract_if_necessary(void) + { + if (!_subtracted) { + event_fourier(); + feature_extract(); + voronoi_area_incident(); + subtract_momentum(); + if (_remove_nonpositive) { + equalize(); + remove_nonpositive(); + } + _subtracted = true; + } + } + + VoronoiAlgorithm::VoronoiAlgorithm( + const double dr_max, + const bool isRealData, + const bool isCalo, + const std::pair equalization_threshold, + const bool remove_nonpositive) + : _remove_nonpositive(remove_nonpositive), + _equalization_threshold(equalization_threshold), + _radial_distance_square_max(dr_max * dr_max), + _positive_bound_scale(0.2), + _subtracted(false), + ue(NULL) + { + initialize_geometry(); + ue = new UECalibration(isRealData, isCalo); + static const size_t nedge_pseudorapidity = 15 + 1; + static const double edge_pseudorapidity[nedge_pseudorapidity] = { + -5.191, -2.650, -2.043, -1.740, -1.479, -1.131, -0.783, -0.522, 0.522, 0.783, 1.131, 1.479, 1.740, 2.043, 2.650, 5.191 + }; + + _edge_pseudorapidity = std::vector( + edge_pseudorapidity, + edge_pseudorapidity + nedge_pseudorapidity); + allocate(); + } + + VoronoiAlgorithm::~VoronoiAlgorithm(void) + { + deallocate(); + } + + /** + * Add a new unsubtracted particle to the current event + * + * @param[in] perp transverse momentum + * @param[in] pseudorapidity pseudorapidity + * @param[in] azimuth azimuth + * @param[in] reduced_particle_flow_id reduced particle + * flow ID, between 0 and 2 (inclusive) + */ + void VoronoiAlgorithm::push_back_particle( + const double perp, const double pseudorapidity, + const double azimuth, + const unsigned int reduced_particle_flow_id) + { + math::PtEtaPhiELorentzVector p(perp, pseudorapidity, azimuth, NAN); + + p.SetE(p.P()); + _event.push_back(particle_t(p, reduced_particle_flow_id)); + } + /** + * Clears the list of unsubtracted particles + */ + void VoronoiAlgorithm::clear(void) + { + _event.clear(); + _subtracted = false; + } + /** + * Returns the transverse momenta of the subtracted particles + * + * @return vector of transverse momenta + */ + std::vector VoronoiAlgorithm::subtracted_equalized_perp(void) + { + subtract_if_necessary(); + + std::vector ret; + + for (std::vector::const_iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + ret.push_back(iterator->momentum_perp_subtracted); + } + + return ret; + } + std::vector VoronoiAlgorithm::subtracted_unequalized_perp(void) + { + subtract_if_necessary(); + + std::vector ret; + + for (std::vector::const_iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + ret.push_back(iterator->momentum_perp_subtracted_unequalized); + } + + return ret; + } + /** + * Returns the area in the Voronoi diagram diagram occupied by + * a given particle + * + * @return vector of area + */ + std::vector VoronoiAlgorithm::particle_area(void) + { + subtract_if_necessary(); + + std::vector ret; + + for (std::vector::const_iterator iterator = + _event.begin(); + iterator != _event.end(); iterator++) { + ret.push_back(iterator->area); + } + + return ret; + } + /** + * Returns the incident particles in the Delaunay diagram + * (particles that has a given particle as the nearest + * neighbor) + * + * @return vector of sets of incident particles + * indices, using the original indexing + */ + std::vector > VoronoiAlgorithm::particle_incident(void) + { + subtract_if_necessary(); + + std::vector > ret; + + for (std::vector::const_iterator + iterator_outer = _event.begin(); + iterator_outer != _event.end(); iterator_outer++) { + std::set e; + + for (std::set::iterator>:: + const_iterator iterator_inner = + iterator_outer->incident.begin(); + iterator_inner != iterator_outer->incident.begin(); + iterator_inner++) { + e.insert(*iterator_inner - _event.begin()); + } + ret.push_back(e); + } + + return ret; + } + std::vector VoronoiAlgorithm::perp_fourier(void) + { + subtract_if_necessary(); + + return std::vector( + _perp_fourier->data(), + _perp_fourier->data() + + _perp_fourier->num_elements()); + } + size_t VoronoiAlgorithm::nedge_pseudorapidity(void) const + { + return _edge_pseudorapidity.size(); + } diff --git a/RecoHI/HiJetAlgos/src/VoronoiSubtractor.cc b/RecoHI/HiJetAlgos/src/VoronoiSubtractor.cc new file mode 100644 index 0000000000000..9121c7310c57b --- /dev/null +++ b/RecoHI/HiJetAlgos/src/VoronoiSubtractor.cc @@ -0,0 +1,188 @@ +#include "RecoHI/HiJetAlgos/interface/VoronoiSubtractor.h" +#include "DataFormats/Candidate/interface/Candidate.h" +#include "FWCore/Framework/interface/ConsumesCollector.h" +#include "FWCore/Framework/interface/ESHandle.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" +using namespace std; + +bool VoronoiSubtractor::match(const fastjet::PseudoJet cand1, const fastjet::PseudoJet cand2){ + return (cand1.delta_R(cand2) < rParam_); +} + + +VoronoiSubtractor::VoronoiSubtractor(const edm::ParameterSet& iConfig, edm::ConsumesCollector && iC) : + PileUpSubtractor(iConfig, std::move(iC)), + srcCand_(iC.consumes(iConfig.getParameter("src"))), + srcVor_(iC.consumes >(iConfig.getParameter("bkg"))), + dropZeroTowers_(iConfig.getParameter("dropZeros")), + addNegativesFromCone_(iConfig.getParameter("addNegativesFromCone")), + infinitesimalPt_(iConfig.getParameter("infinitesimalPt")), + rParam_(iConfig.getParameter("rParam")) +{ + +} + + + +void VoronoiSubtractor::setupGeometryMap(edm::Event& iEvent,const edm::EventSetup& iSetup) +{ + + LogDebug("VoronoiSubtractor")<<"The subtractor retrieving Voronoi background...\n"; + geo_ = 0; + droppedCandidates_.clear(); + jetOffset_.clear(); + + iEvent.getByToken(srcCand_,candidates_); + iEvent.getByToken(srcVor_,backgrounds_); + +} + +void VoronoiSubtractor::offsetCorrectJets() +{ + + LogDebug("VoronoiSubtractor")<<"finalizing the output...\n"; + + jetOffset_.reserve(fjJets_->size()); + + for (unsigned int ijet = 0;ijet size();++ijet) { + fastjet::PseudoJet& fjJet = (*fjJets_)[ijet]; + + LogDebug("VoronoiSubtractor")<<"fjJets_ "< fjConstituents = fastjet::sorted_by_pt(fjJet.constituents()); + for (unsigned int i=0;ipx(),ref->py(),ref->pz(),ref->energy()); + double orpt = candidate.perp(); + unsubtracted += candidate; + if(voronoi.pt() > 0){ + candidate.reset_PtYPhiM(voronoi.pt(),ref->rapidity(),ref->phi(),ref->mass()); + LogDebug("VoronoiSubtractor")<<"candidate "<pt() + <<" --- constituent "<px(),ref->py(),ref->pz(),ref->energy()); + + if(match(fjJet,dropcand)){ + unsubtractedDropped += dropcand; + unsubtracted += dropcand; + } + } + } + + fjJet.reset_momentum(subtracted); + + LogDebug("VoronoiSubtractor")<<"fjJets_ "< & coll) +{ + + LogDebug("VoronoiSubtractor")<<"The subtractor subtracting pedestals...\n"; + vector newcoll; + + for (vector::iterator input_object = coll.begin (), + fjInputsEnd = coll.end(); + input_object != fjInputsEnd; ++input_object) { + + reco::CandidateViewRef ref(candidates_,input_object->user_index()); + const reco::VoronoiBackground& voronoi = (*backgrounds_)[ref]; + + double ptold = input_object->pt(); + double ptnew = voronoi.pt(); + + LogDebug("VoronoiSubtractor")<<"pt old : "<e() + <<" rap : "<rapidity() + <<" phi : "<phi() + <<" MASS : "<m()< 0){ + // Low-pt candidate is assigned a very small finite pt + // so that the jet clustering includes the candidate + // and can associate it to the jet. + // The original candidate pt is restored + // in the offsetCorrectJets() function. + ptnew = infinitesimalPt_; + }else{ + // Low-pt candidate is removed from the input collection, + // so that the jet clustering algorithm can function properly. + // However, we need to keep track of these candidates + // in order to determine how much energy has been subtracted in total. + droppedCandidates_.push_back(input_object->user_index()); + continue; + } + } + + int index = input_object->user_index(); + + fastjet::PseudoJet ps(input_object->four_mom()); + ps.reset_PtYPhiM(ptnew,input_object->rapidity(),input_object->phi(),input_object->m()); + ps.set_user_index(index); + + LogDebug("VoronoiSubtractor")<<"New momentum : "< const & coll ) +{ + LogDebug("VoronoiSubtractor")<<"do nothing...\n"; +} + + +void VoronoiSubtractor::calculateOrphanInput(vector & orphanInput) +{ + LogDebug("VoronoiSubtractor")<<"do nothing...\n"; +} + + diff --git a/RecoHI/HiJetAlgos/src/bpmpd-2.11.f b/RecoHI/HiJetAlgos/src/bpmpd-2.11.f new file mode 100644 index 0000000000000..0d7fd63a5eb05 --- /dev/null +++ b/RecoHI/HiJetAlgos/src/bpmpd-2.11.f @@ -0,0 +1,10561 @@ +C Version for CMSSW, modified to suppress gfortran warnings +C ------------------------------------------------------------------- +c Primal-dual method with supernodal cholesky factorization +c Version 2.11 (1996 December) +c Written by Cs. Meszaros, MTA SzTAKI, Budapest, Hungary +c Questions, remarks to the e-mail address: +c meszaros@lutra.sztaki.hu +c +c All rights reserved ! Free for academic and research use only ! +c Commercial users are required to purchase a software license. +c +c Related publications: +c +c Meszaros, Cs.: Fast Cholesky Factorization for Interior Point Methods +c of Linear Programming. Computers & Mathematics with Applications, +c Vol. 31. No.4/5 (1996) pp. 49-51. +c +c Meszaros, Cs.: The "inexact" minimum local fill-in ordering algorithm. +c Working Paper WP 95-7, Computer and Automation Institute, Hungarian +c Academy of Sciences +c +c Maros I., Meszaros Cs.: The Role of the Augmented System in Interior +c Point Methods. European Journal of Operations Researches +c (submitted) +c +c =========================================================================== +c +c Callable interface +c +c Standard form: ax-s=b u>=x,s>=l +c +c remarks: +c EQ rows 0 >= s >= 0 +c GT rows +inf >= s >= 0 +c LT rows 0 >= s >= -inf +c FR rows +inf >= s >= -inf +c +c input: obj objective function (to be minimize) (n) +c rhs right-hand side (m) +c lbound lower bounds (m+n) +c ubound upper bounds (m+n) +c colpnt pointer to the columns (n+1) +c rowidx row indices (nz) +c nonzeros nonzero values (nz) +c big practical +inf +c +c output: code termination code +c xs primal values +c dv dual values +c dspr dual resuduals +c +c Input arrays will be destroyed ! +c +c =========================================================================== +c + subroutine solver( + x obj,rhs,lbound,ubound,diag,odiag,xs,dxs,dxsn,up,dspr,ddspr, + x ddsprn,dsup,ddsup,ddsupn,dv,ddv,ddvn,prinf,upinf,duinf,scale, + x nonzeros, + x vartyp,slktyp,colpnt,ecolpnt,count,vcstat,pivots,invprm, + x snhead,nodtyp,inta1,prehis,rowidx,rindex, + x code,opt,iter,corect,fixn,dropn,fnzmax,fnzmin,addobj, + x bigbou,big,ft) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/initv/ prmin,upmax,dumin,stamet,safmet,premet,regul + real*8 prmin,upmax,dumin + integer*4 stamet,safmet,premet,regul +c + integer*4 fixn,dropn,code,iter,corect,fnzmin,fnzmax,ft + real*8 addobj,opt,big, + x obj(n),rhs(m),lbound(mn),ubound(mn),scale(mn),diag(mn),odiag(mn), + x xs(mn),dxs(mn),dxsn(mn),up(mn),dspr(mn),ddspr(mn),ddsprn(mn), + x dsup(mn),ddsup(mn),ddsupn(mn),dv(m),ddv(m),ddvn(m), + x nonzeros(cfree),prinf(m),upinf(mn),duinf(mn),bigbou + integer*4 vartyp(n),slktyp(m),colpnt(n1),ecolpnt(mn), + x count(mn),vcstat(mn),pivots(mn),invprm(mn),snhead(mn), + x nodtyp(mn),inta1(mn),prehis(mn),rowidx(cfree),rindex(rfree) +c + common/numer/ tplus,tzer + real*8 tplus,tzer + common/ascal/ objnor,rhsnor,scdiff,scpass,scalmet + real*8 objnor,rhsnor,scdiff + integer*4 scpass,scalmet +c --------------------------------------------------------------------------- + integer*4 i,j,k,active,pnt1,pnt2,prelen,freen + real*8 scobj,scrhs,sol,lbig + character*99 buff +C CMSSW: Temporary integer array needed to avoid reusing REAL*8 for +C integer storage + integer*4 pmbig(m),ppbig(m),dmbig(n),dpbig(n) + integer*4 iwork1(mn+mn),iwork2(mn+mn),iwork3(mn+mn),iwork4(mn+mn), + & iwork5(mn+mn) +c --------------------------------------------------------------------------- +c +c inicializalas +c + if(cfree.le.(nz+1)*2)then + write(buff,'(1x,a)')'Not enough memory, realmem < nz !' + call mprnt(buff) + code=-2 + goto 50 + endif + if(rfree.le.nz)then + write(buff,'(1x,a)')'Not enough memory, intmem < nz !' + call mprnt(buff) + code=-2 + goto 50 + endif + iter=0 + corect=0 + prelen=0 + fnzmin=cfree + fnzmax=-1 + scobj=1.0d+0 + scrhs=1.0d+0 + code=0 + lbig=0.9d+0*big + if(bigbou.gt.lbig)then + lbig=bigbou + big=lbig/0.9d+0 + endif + do i=1,mn + scale(i)=1.0d+0 + enddo +c +c Remove fix variables and free rows +c + do i=1,n + vartyp(i)=0 + if(abs(ubound(i)-lbound(i)).le.tplus*(abs(lbound(i)+1.0d0)))then + vartyp(i)= 1 + vcstat(i)=-2-1 + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + rhs(rowidx(j))=rhs(rowidx(j))-ubound(i)*nonzeros(j) + enddo + addobj=addobj+obj(i)*lbound(i) + else + vcstat(i)=0 + endif + enddo + do i=1,m + slktyp(i)=0 + j=i+n + if((ubound(j).gt.lbig).and.(lbound(j).lt.-lbig))then + vcstat(j)=-2-1 + else + vcstat(j)=0 + endif + enddo +c +c p r e s o l v e r +c + call timer(k) + if(premet.gt.0)then + write(buff,'(1x)') + call mprnt(buff) + write(buff,'(1x,a)')'Process: presolv' + call mprnt(buff) + call presol(colpnt,rowidx,nonzeros,rindex,nonzeros(nz+1), + x snhead,snhead(n1),nodtyp,nodtyp(n1),vcstat,vcstat(n1), + x ecolpnt,count,ecolpnt(n1),count(n1), +C CMSSW: Prevent REAL*8 reusage warning +C Was: vartyp,dxsn(n1),dxs(n1),diag(n1),odiag(n1), + x vartyp,dxsn(n1),dxs(n1),pmbig,ppbig, + x ubound,lbound,ubound(n1),lbound(n1),rhs,obj,prehis,prelen, +C CMSSW: Prevent REAL*8 reusage warning +C Was: addobj,big,pivots,invprm,dv,ddv,dxsn,dxs,diag,odiag,premet,code) + x addobj,big,pivots,invprm,dv,ddv,dxsn,dxs,dmbig,dpbig,premet, + x code) + write(buff,'(1x,a)')'Presolv done...' + call mprnt(buff) + if(code.ne.0)goto 45 + endif +c +c Remove lower bounds +c + call stndrd(ubound,lbound,rhs,obj,nonzeros, + x vartyp,slktyp,vcstat,colpnt,rowidx,addobj,tplus,tzer,lbig,big) +c +c Scaling before aggregator +c + i=iand(scalmet,255) + j=iand(scpass,255) + if(i.gt.0)call mscale(colpnt,rowidx,nonzeros,obj,rhs,ubound, + x vcstat,scale,upinf,i,j,scdiff,ddsup,dxsn,dxs,snhead) +c +c Aggregator +c + if(premet.gt.127)then + write(buff,'(1x)') + call mprnt(buff) + write(buff,'(1x,a)')'Process: aggregator' + call mprnt(buff) + call aggreg(colpnt,rowidx,nonzeros,rindex, + x vcstat,vcstat(n1),ecolpnt,count,ecolpnt(n1),count(n1), + x rhs,obj,prehis,prelen,pivots,vartyp,slktyp,invprm,snhead, + x nodtyp,inta1,inta1(n1),dv,addobj,premet,code) + write(buff,'(1x,a)')'Aggregator done...' + call mprnt(buff) + if(code.ne.0)goto 55 + endif +c +c Scaling after aggregator +c + i=scalmet/256 + j=scpass/256 + if(i.gt.0)call mscale(colpnt,rowidx,nonzeros,obj,rhs, + x ubound,vcstat,scale,upinf,i,j,scdiff,ddsup,dxsn,dxs,snhead) +c + call timer(j) + write(buff,'(1x)') + call mprnt(buff) + write(buff,'(1x,a,f8.2,a)') + x 'Time for presolv, scaling and aggregator: ',0.01*(j-k),' sec.' + call mprnt(buff) +c +c cleaning +c + do i=1,mn + xs(i)=0.0d+0 + dspr(i)=0.0d+0 + dsup(i)=0.0d+0 + up(i)=0.0d+0 + enddo + do i=1,m + dv(i)=0.0d+0 + enddo +c +c Is the problem solved ? +c + fixn=0 + dropn=0 + freen=0 + do i=1,n + if(vcstat(i).le.-2)then + fixn=fixn+1 + else if(vartyp(i).eq.0) then + freen=freen+1 + endif + enddo + do i=1,m + if(vcstat(i+n).le.-2)dropn=dropn+1 + enddo + active=mn-fixn-dropn + if(active.eq.0)code=2 + if(code.gt.0)then + opt=addobj + write(buff,'(1x,a)')'Problem is solved by the pre-solver' + call mprnt(buff) + if(code.gt.0)goto 55 + goto 50 + endif +c +c Presolve statistics +c + if(premet.gt.0)then + i=0 + j=0 + do k=1,n + if(vcstat(k).gt.-2)then + i=i+count(k)-ecolpnt(k)+1 + if(j.lt.count(k)-ecolpnt(k)+1)j=count(k)-ecolpnt(k)+1 + endif + enddo + write(buff,'(1x,a22,i8)')'Number of rows :',(m-dropn) + call mprnt(buff) + write(buff,'(1x,a22,i8)')'Number of columns :',(n-fixn) + call mprnt(buff) + write(buff,'(1x,a22,i8)')'Free variables :',freen + call mprnt(buff) + write(buff,'(1x,a22,i8)')'No. of nonzeros :',i + call mprnt(buff) + write(buff,'(1x,a22,i8)')'Longest column count :',j + call mprnt(buff) + endif +c +c Incrase rowidx by n +c + j=colpnt(1) + k=colpnt(n+1)-1 + do i=j,k + rowidx(i)=rowidx(i)+n + enddo + active=mn-fixn-dropn +c +c Normalize obj and rhs +c + if(objnor.gt.tzer)then + call scalobj(obj,scobj,vcstat,objnor) + endif + if(rhsnor.gt.tzer)then + call scalrhs(rhs,scrhs,vcstat,rhsnor,ubound,xs,up) + endif +c +c Calling phas12 +c + sol=scobj*scrhs + i=mn+mn + call timer(k) + call phas12( + x obj,rhs,ubound,diag,odiag,xs,dxs,dxsn,up,dspr,ddspr, + x ddsprn,dsup,ddsup,ddsupn,dv,ddv,ddvn,nonzeros,prinf,upinf,duinf, + x vartyp,slktyp,colpnt,ecolpnt,count,vcstat,pivots,invprm, + x snhead,nodtyp,inta1,rowidx,rindex, +C CMSSW: Prevent REAL*8 reusage warning +C Was: dxs,dxsn,ddspr,ddsprn,ddsup,ddsupn, + x dxs,iwork1,iwork2,iwork3,iwork4,iwork5, + x code,opt,iter,corect,fixn,dropn,active,fnzmax,fnzmin,addobj, + x sol,ft,i) + call timer(j) + write(buff,'(1x,a,f11.2,a)')'Solver time ',0.01*(j-k),' sec.' + call mprnt(buff) +c +c Decrease rowidx by n +c + j=colpnt(1) + k=colpnt(n+1)-1 + do i=j,k + rowidx(i)=rowidx(i)-n + enddo +c +c Rescaling +c + 55 do i=1,m + rhs(i)=rhs(i)*scrhs*scale(i+n) + ubound(i+n)=ubound(i+n)*scrhs*scale(i+n) + xs(i+n)=xs(i+n)*scrhs*scale(i+n) + up(i+n)=up(i+n)*scrhs*scale(i+n) + dv(i)=dv(i)*scobj/scale(i+n) + dspr(i+n)=dspr(i+n)/scale(i+n)*scobj + dsup(i+n)=dsup(i+n)/scale(i+n)*scobj + enddo +c + do i=1,n + obj(i)=obj(i)*scobj*scale(i) + ubound(i)=ubound(i)*scrhs/scale(i) + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + nonzeros(j)=nonzeros(j)*scale(i)*scale(rowidx(j)+n) + enddo +c + xs(i)=xs(i)/scale(i)*scrhs + up(i)=up(i)/scale(i)*scrhs + dspr(i)=dspr(i)*scale(i)*scobj + dsup(i)=dsup(i)*scale(i)*scobj + enddo +c +c Postprocessing +c + 45 call pstsol(colpnt,rowidx,nonzeros,vcstat,vcstat(n1), + x vartyp,slktyp,ubound,lbound,ubound(n1),lbound(n1),rhs,obj,xs, + x inta1,ddvn,prehis,prelen,big) +c + 50 return + end +c +c =========================================================================== +c + subroutine stndrd(ubound,lbound,rhs,obj,nonzeros, + x vartyp,slktyp,vcstat,colpnt,rowidx,addobj,tplus,tzer,lbig,big) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 vartyp(n),slktyp(m),vcstat(mn),colpnt(n1),rowidx(nz) + real*8 ubound(mn),lbound(mn),rhs(m),obj(n),nonzeros(nz), + x addobj,tplus,tzer,lbig,big +c + integer*4 i,j,k,pnt1,pnt2 +c +c generate standard form, row modification +c + k=0 + do 150 i=1,m + j=i+n + if(vcstat(j).gt.-2)then + if(abs(ubound(j)-lbound(j)).le.tplus*(abs(lbound(j))+1d0))then + slktyp(i)=0 + ubound(j)=0.0d+00 + rhs(i)=rhs(i)+lbound(j) + goto 150 + endif +ccc if((ubound(j).gt.lbig).and.(lbound(j).lt.-lbig))then +ccc vcstat(j)=-2 +ccc slktyp(i)=0 +ccc goto 150 +ccc endif + if(lbound(j).lt.-lbig)then + slktyp(i)=2 + lbound(j)=-ubound(j) + ubound(j)=big + rhs(i)=-rhs(i) + k=k+1 + else + slktyp(i)=1 + endif + rhs(i)=rhs(i)+lbound(j) + ubound(j)=ubound(j)-lbound(j) + if(ubound(j).lt.lbig)slktyp(i)=-slktyp(i) + else + slktyp(i)=0 + endif + 150 continue +c +c negate reverse rows +c + if(k.gt.0)then + do i=1,n + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + if(abs(slktyp(rowidx(j))).ge.2)nonzeros(j)=-nonzeros(j) + enddo + enddo + endif +c +c column modification +c + do 155 i=1,n + if(vcstat(i).gt.-2)then +ccc if(abs(ubound(i)-lbound(i)).le.tplus*(abs(lbound(i))+1d0))then +ccc vcstat(i)=-2 +ccc vartyp(i)= 1 +ccc do j=colpnt(i),colpnt(i+1)-1 +ccc rhs(rowidx(j))=rhs(rowidx(j))-nonzeros(j)*lbound(i) +ccc enddo +ccc addobj=addobj+obj(i)*lbound(i) +ccc goto 155 +ccc endif + if((ubound(i).gt.lbig).and.(lbound(i).lt.-lbig))then + vartyp(i)=0 + goto 155 + endif + if(lbound(i).lt.-lbig)then + vartyp(i)=2 + lbound(i)=-ubound(i) + ubound(i)=big + obj(i)=-obj(i) + do j=colpnt(i),colpnt(i+1)-1 + nonzeros(j)=-nonzeros(j) + enddo + else + vartyp(i)=1 + endif + if(abs(lbound(i)).gt.tzer)then + if(ubound(i).lt.lbig)ubound(i)=ubound(i)-lbound(i) + do j=colpnt(i),colpnt(i+1)-1 + rhs(rowidx(j))=rhs(rowidx(j))-nonzeros(j)*lbound(i) + enddo + addobj=addobj+obj(i)*lbound(i) + endif + if(ubound(i).lt.lbig)vartyp(i)=-vartyp(i) + endif + 155 continue + return + end +c +c =========================================================================== +c Primal-dual method with supernodal cholesky factorization +c Version 2.11 (1996 December) +c Written by Cs. Meszaros, MTA SzTAKI, Budapest, Hungary +c e-mail: meszaros@lutra.sztaki.hu +c see "bpmain.f" +c +c code=-2 General memory limit (no solution) +c code=-1 Memory limit during iterations +c code= 0 +c code= 1 No optimum +c code= 2 Otimal solution +c code= 3 Primal Infeasible +c code= 4 Dual Infeasible +c +c =========================================================================== +c + subroutine phas12( + x obj,rhs,bounds,diag,odiag,xs,dxs,dxsn,up,dspr,ddspr, + x ddsprn,dsup,ddsup,ddsupn,dv,ddv,ddvn,nonzeros,prinf,upinf,duinf, + x vartyp,slktyp,colpnt,ecolpnt,count,vcstat,pivots,invprm, + x snhead,nodtyp,inta1,rowidx,rindex, + x rwork1,iwork1,iwork2,iwork3,iwork4,iwork5, + x code,opt,iter,corect,fixn,dropn,active,fnzmax,fnzmin,addobj, + x scobj,factim,mn2) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/mscal/ varadd,slkadd,scfree + real*8 varadd,slkadd,scfree +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c + common/param/ palpha,dalpha + real*8 palpha,dalpha +c + common/factor/ tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens + real*8 tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens +c + common/toler/ tsdir,topt1,topt2,tfeas1,tfeas2,feas1,feas2, + x pinfs,dinfs,inftol,maxiter + real*8 tsdir,topt1,topt2,tfeas1,tfeas2,feas1,feas2, + x pinfs,dinfs,inftol + integer*4 maxiter +c + common/initv/ prmin,upmax,dumin,stamet,safmet,premet,regul + real*8 prmin,upmax,dumin + integer*4 stamet,safmet,premet,regul +c + integer*4 fixn,dropn,active,code,iter,corect,fnzmin,fnzmax,mn2 + real*8 addobj,scobj,opt +c + common/predp/ ccstop,barset,bargrw,barmin,mincor,maxcor,inibar + real*8 ccstop,barset,bargrw,barmin + integer*4 mincor,maxcor,inibar +c + common/predc/ target,tsmall,tlarge,center,corstp,mincc,maxcc + real*8 target,tsmall,tlarge,center,corstp + integer*4 mincc,maxcc + + common/itref/ tresx,tresy,maxref + real*8 tresx,tresy + integer*4 maxref +c + real*8 obj(n),rhs(m),bounds(mn),diag(mn),odiag(mn),xs(mn), + x dxs(mn),dxsn(mn),up(mn),dspr(mn),ddspr(mn),ddsprn(mn),dsup(mn), + x ddsup(mn),ddsupn(mn),dv(m),ddv(m),ddvn(m),nonzeros(cfree), + x prinf(m),upinf(mn),duinf(mn),rwork1(mn) + + integer*4 vartyp(n),slktyp(m),colpnt(n1),ecolpnt(mn),count(mn), + x vcstat(mn),pivots(mn),invprm(mn),snhead(mn),nodtyp(mn), + x inta1(mn),rowidx(cfree),rindex(rfree),factim, + x iwork1(mn2),iwork2(mn2),iwork3(mn2),iwork4(mn2),iwork5(mn2) +c +c --------------------------------------------------------------------------- +c + integer*4 i,j,err,factyp,pphase,dphase,t1,t2,opphas,odphas + real*8 pinf,dinf,uinf,prelinf,drelinf,popt,dopt,cgap, + x prstpl,dustpl,barpar,oper,maxstp,pinfrd,dinfrd,objerr,nonopt, + x oprelinf,odrelinf,opinf,odinf,ocgap + integer*4 corr,corrc,barn,fxp,fxd,fxu,nropt + character*99 buff,sbuff + character*1 wmark +c +c to save parameters +c + integer*4 maxcco,mxrefo + real*8 lamo,spdeno,bargro,topto +C CMSSW: Temporary integer array needed to avoid reusing REAL*8 for +C integer storage + integer*4 inta12(mn) +c +c -------------------------------------------------------------------------- +c + 101 format(1x,' ') + 102 format(1x,'It-PC P.Inf D.Inf U.Inf Actions ', + x 'P.Obj D.Obj Barpar') + 103 format(1x,'------------------------------------------------', + x '------------------------------') + 104 format(1x,I2,a1,I1,I1,' ',1PD7.1,' ',1PD7.1,' ',1PD6.0, + x ' ',I2,' ',I3,' ',I3,' ',1PD15.8,' ',1PD15.8,' ',1PD6.0) +c +c Saving parameters +c + maxcco=maxcc + mxrefo=maxref + lamo=lam + spdeno=supdens + bargro=bargrw + topto=topt1 +c +c Include dummy ranges if requested +c + if(regul.gt.0)then + do i=1,m + if(slktyp(i).eq.0)then + slktyp(i)=-1 + bounds(i+n)=0.0d+0 + endif + enddo + endif +c +c Other initialization +c + nropt=0 + factim=0 + wmark='-' + fxp=0 + fxd=0 + fxu=0 +c + call stlamb(colpnt,vcstat,rowidx,inta1,fixn,dropn,factyp) + call timer(t1) + j=0 + do i=1,n + if((vcstat(i).gt.-2).and.(vartyp(i).eq.0))j=j+1 + enddo + if((j.gt.0).and.(scfree.lt.tzer))factyp=1 +c +c Initial scaling matrix (diagonal) +c + call fscale (vcstat,diag,odiag,vartyp,slktyp) + do i=1,m + dv(i)=0.0d+0 + enddo + +ccc i=2*rfree +ccc j=400 +ccc call paintmat(m,n,nz,i,rowidx,colpnt,rindex,j,'matrix01.pic') + +c +c Initial factorization +c + fnzmax=0 + if(factyp.eq.1)then + call ffactor(ecolpnt,vcstat,colpnt,rowidx, + x iwork4,pivots,count,nonzeros,diag, + x iwork1,iwork1(mn+1),iwork2,iwork2(mn+1),inta1,iwork5, + x iwork5(mn+1),iwork3,iwork3(mn+1),iwork4(mn+1),rindex, + x rwork1,fixn,dropn,fnzmax,fnzmin,active,oper,xs,slktyp,code) + if(code.ne.0)goto 999 + call supnode(ecolpnt,count,rowidx,vcstat,pivots,snhead, + x invprm,nodtyp) + else +c +c minimum local fill-in ordering +c + i=int(tfind) + if(order.lt.1.5)i=0 + if(order.lt.0.5)i=-1 + call symmfo(inta1,pivots,ecolpnt,vcstat, + x colpnt,rowidx,nodtyp,rindex,iwork3,invprm, + x count,snhead,iwork1,iwork1(mn+1),iwork2,iwork2(mn+1), + x iwork4,iwork4(mn+1),iwork3(mn+1),iwork5,iwork5(mn+1), +C CMSSW: Prevent REAL*8 reusage warning +C Was: nonzeros,fnzmax,oper,i,rwork1,code + x nonzeros,fnzmax,oper,i,inta12,code) + if(code.ne.0)goto 999 + call supnode(ecolpnt,count,rowidx,vcstat,pivots,snhead, + x invprm,nodtyp) + popt=trabs + trabs=tabs + call nfactor(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,err,rwork1,iwork2,iwork2(mn+1),dropn,slktyp, + x snhead,iwork3,invprm,nodtyp,dv,odiag) + trabs=popt + endif + fnzmin=fnzmax +c +c Compute centrality and iterative refinement power +c + if(fnzmin.eq.0)fnzmin=1 + cgap=oper/fnzmin/10.0d+0 + j=0 + 78 if(cgap.ge.1.0d+0)then + cgap=cgap/2 + j=j+1 + goto 78 + endif + if(j.eq.0)j=1 + if(maxcc.le.0d+0)then + maxcc=-maxcc + else + if(j.le.maxcc)maxcc=j + endif + if(mincc.gt.maxcc)maxcc=mincc + cgap=log(1.0d+0+oper/fnzmin/5.0d+0)/log(2.0d+00) + if(maxref.le.0)then + maxref=-maxref + else + maxref=int(cgap*maxref) + endif + if(maxref.le.0)maxref=0 + write(buff,'(1x,a,i2)')'Centrality correction Power:',maxcc + call mprnt(buff) + write(buff,'(1x,a,i2)')'Iterative refinement Power:',maxref + call mprnt(buff) +c +c Starting point +c + call initsol(xs,up,dv,dspr,dsup,rhs,obj,bounds,vartyp,slktyp, + x vcstat,colpnt,ecolpnt,pivots,rowidx,nonzeros,diag,rwork1, + x count) + call timer(t2) +c + write(buff,'(1x,a,f12.2,a)')'FIRSTFACTOR TIME :', + x (dble(t2-t1)*0.01d+0),' sec' + call mprnt(buff) +c + maxstp=1.0d+0 + iter=0 + corect=0 + corr=0 + corrc=0 + barn=0 + cgap=0.0d+0 + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.ne.0)then + cgap=cgap+xs(i)*dspr(i) + barn=barn+1 + endif + if(j.lt.0)then + cgap=cgap+up(i)*dsup(i) + barn=barn+1 + endif + endif + enddo + if(barn.lt.1)barn=1 + +ccc i=2*rfree +ccc j=350 +ccc call paintaat(mn,nz,pivotn,i,rowidx,ecolpnt,count,rindex, +ccc x j,pivots,iwork1,iwork1(mn+1),iwork2,iwork2(mn+1),iwork3, +ccc x iwork3(mn+1),'normal01.pic') + +ccc i=2*rfree +ccc j=400 +ccc call paintata(mn,nz,pivotn,i,rowidx,ecolpnt,count,rindex, +ccc x j,pivots,iwork1,iwork1(mn+1),iwork2,iwork2(mn+1),iwork3, +ccc x 'atapat01.pic') + + +ccc i=2*rfree +ccc j=350 +ccc err=nz +ccc call paintfct(mn,cfree,pivotn,i,rowidx,ecolpnt,count,rindex, +ccc x j,pivots,iwork2,err,'factor01.pic') +c +c Initialize for the iteration loop +c + do i=1,n + if((vcstat(i).gt.-2).and.(vartyp(i).ne.0))then + if(xs(i).gt.dspr(i))then + vcstat(i)=1 + else + vcstat(i)=0 + endif + endif + enddo + do i=1,m + if((vcstat(i+n).gt.-2).and.(slktyp(i).ne.0))then + if(xs(i+n).gt.dspr(i+n))then + vcstat(i+n)=1 + else + vcstat(i+n)=0 + endif + endif + enddo + opphas=0 + odphas=0 + pinfrd=1.0d+0 + dinfrd=1.0d+0 + barpar=0.0d+0 +c +c main iteration loop +c + 10 if(mod(iter,20).eq.0)then + write(buff,101) + call mprnt(buff) + write(buff,102) + call mprnt(buff) + write(buff,103) + call mprnt(buff) + endif +c +c Infeasibilities +c + call cprinf(xs,prinf,slktyp,colpnt,rowidx,nonzeros, + x rhs,vcstat,pinf) + call cduinf(dv,dspr,dsup,duinf,vartyp,slktyp,colpnt,rowidx, + x nonzeros,obj,vcstat,dinf) + call cupinf(xs,up,upinf,bounds,vartyp,slktyp,vcstat, + x uinf) +c +c Objectives +c + call cpdobj(popt,dopt,obj,rhs,bounds,xs,dv,dsup, + x vcstat,vartyp,slktyp) + popt=scobj*popt+addobj + dopt=scobj*dopt+addobj +c +c Stopping criteria +c + call stpcrt(prelinf,drelinf,popt,dopt,cgap,iter, + x code,pphase,dphase,maxstp,pinf,uinf,dinf, + x prinf,upinf,duinf,nonopt,pinfrd,dinfrd, + x prstpl,dustpl,obj,rhs,bounds,xs,dxs,dspr,ddspr,dsup,ddsup,dv,ddv, + x up,addobj,scobj,vcstat,vartyp,slktyp, + x oprelinf,odrelinf,opinf,odinf,ocgap,opphas,odphas,sbuff) +c + write(buff,104)iter,wmark,corr,corrc,pinf,dinf,uinf,fxp,fxd,fxu, + x popt,dopt,barpar + call mprnt(buff) + if(code.ne.0)then + write(buff,'(1x)') + call mprnt(buff) + call mprnt(sbuff) + goto 90 + endif +c +c P-D solution modification +c + call pdmodi(xs,dspr,vcstat,vartyp,slktyp,cgap,popt, + x dopt,prinf,duinf,upinf,colpnt,rowidx,nonzeros,pinf,uinf,dinf) +c +c Fixing variables / dropping rows / handling dual slacks +c + i=fixn + call varfix(vartyp,slktyp,rhs,colpnt,rowidx,nonzeros, + x xs,up,dspr,dsup,vcstat,fixn,dropn,addobj,scobj,obj,bounds, + x duinf,dinf,fxp,fxd,fxu) + if(fixn.ne.i)then + call supupd(pivots,invprm,snhead,nodtyp,vcstat,ecolpnt) + call cprinf(xs,prinf,slktyp,colpnt,rowidx,nonzeros, + x rhs,vcstat,pinf) + call cupinf(xs,up,upinf,bounds,vartyp,slktyp,vcstat, + x uinf) + endif +c +c Compute gap +c + cgap=0.0d+0 + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.ne.0)then + cgap=cgap+xs(i)*dspr(i) + if(j.lt.0)then + cgap=cgap+up(i)*dsup(i) + endif + endif + endif + enddo +c +c Computation of the scaling matrix +c + objerr=abs(dopt-popt)/(abs(popt)+1.0d+0) + call cdiag(xs,up,dspr,dsup,vartyp,slktyp,vcstat,diag,odiag) + pinfrd=pinf + dinfrd=dinf +c +c The actual factorization +c + 50 err=0 + call timer(t1) + if (factyp.eq.1) then + call mfactor(ecolpnt,vcstat,colpnt,rowidx,pivots, + x count,iwork4,nonzeros,diag,err,rwork1,iwork2,iwork2(mn+1), + x dropn,slktyp,snhead,iwork3,invprm,nodtyp,dv,odiag) + else + call nfactor(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,err,rwork1,iwork2,iwork2(mn+1),dropn,slktyp, + x snhead,iwork3,invprm,nodtyp,dv,odiag) + endif + call timer(t2) + if(err.gt.0)then + do i=1,mn + diag(i)=odiag(i) + enddo + call newsmf(colpnt,pivots,rowidx,nonzeros,ecolpnt,count, + x vcstat,invprm,snhead,nodtyp,iwork1,rwork1,iwork2,iwork3, + x iwork4,code) + if(code.lt.0)then + write(buff,'(1x)') + call mprnt(buff) + goto 90 + endif + goto 50 + endif + factim=factim+t2-t1 +c +c We are in the finish ? +c + wmark(1:1)='-' + if(objerr.gt.1.0d+0)objerr=1.0d+0 + if(objerr.lt.topt1)objerr=topt1 + if((objerr.le.topt1*10.0d+0).and.(pphase+dphase.eq.4))then + if(bargrw.gt.0.1d+0)bargrw=0.1d+0 + nropt=nropt+1 + if(nropt.eq.5)then + nropt=0 + topt1=topt1*sqrt(10.d+0) + write(buff,'(1x,a)')'Near otptimal but slow convergence.' + call mprnt(buff) + endif + wmark(1:1)='+' + endif +c +c primal-dual predictor-corrector direction +c + call cpdpcd(xs,up,dspr,dsup,prinf,duinf,upinf, + x dxsn,ddvn,ddsprn,ddsupn,dxs,ddv,ddspr,ddsup,bounds, + x ecolpnt,count,pivots,vcstat,diag,odiag,rowidx,nonzeros, + x colpnt,vartyp,slktyp,barpar,corr,prstpl,dustpl,barn,cgap) + corect=corect+corr +c +c primal-dual centality-correction +c + call cpdccd(xs,up,dspr,dsup,upinf, + x dxsn,ddvn,ddsprn,ddsupn,dxs,ddv,ddspr,ddsup,bounds, + x ecolpnt,count,pivots,vcstat,diag,odiag,rowidx,nonzeros, + x colpnt,vartyp,slktyp,barpar,corrc,prstpl,dustpl) + corect=corect+corrc +c +c compute steplengths +c + iter=iter+1 + prstpl=prstpl*palpha + dustpl=dustpl*dalpha +c +c compute the new primal-dual solution +c + call cnewpd(prstpl,xs,dxs,up,upinf,dustpl,dv,ddv,dspr, + x ddspr,dsup,ddsup,vartyp,slktyp,vcstat,maxstp) +c +c End main loop +c + goto 10 +c + 90 opt=(dopt-popt)/(abs(popt)+1.0d+0) + write(buff,'(1x,a,1PD11.4,a,1PD18.10)') + x 'ABSOLUTE infeas. Primal :',pinf, ' Dual :',dinf + call mprnt(buff) + write(buff,'(1x,a,1PD11.4,a,1PD18.10)') + x 'PRIMAL : Relative infeas. :',prelinf,' Objective :',popt + call mprnt(buff) + write(buff,'(1x,a,1PD11.4,a,1PD18.10)') + x 'DUAL : Relative infeas. :',drelinf,' Objective :',dopt + call mprnt(buff) + write(buff,'(1x,a,1PD11.4,a,1PD18.10)') + x 'Complementarity gap :',cgap,' Duality gap :',opt + call mprnt(buff) + opt=popt +c +c Restoring parameters +c + 999 maxcc=maxcco + maxref=mxrefo + lam=lamo + supdens=spdeno + bargrw=bargro + topt1=topto + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine mscale(colpnt,rowidx,nonzeros, + x obj,rhs,ubound,vcstat,scale,scalen,scalmet,scpass,scdiff, + x ddsup,ddsupn,dxs,snhead) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 colpnt(n1),rowidx(nz),vcstat(mn), + x scalmet,scpass,snhead(mn) + real*8 nonzeros(cfree),obj(n),rhs(m),ubound(mn),scale(mn), + x scalen(mn),scdiff,ddsup(mn),ddsupn(mn),dxs(mn) +c + integer*4 i + character*99 buff +c + write(buff,'(1x)') + call mprnt(buff) + write(buff,'(1x,a)')'Process: scaling' + call mprnt(buff) +c + do i=1,mn + scalen(i)=1.0d+0 + enddo +c + if((scalmet.eq.2).or.(scalmet.eq.4))then + call scale1(ubound,nonzeros,colpnt,obj,scalen,vcstat, + x rowidx,rhs,ddsup,scpass,scdiff,snhead,nonzeros(nz+1)) + endif + if((scalmet.eq.3).or.(scalmet.eq.5))then + call scale2(ubound,nonzeros,colpnt,obj,scalen,vcstat, + x rowidx,rhs,scpass,scdiff,ddsup,ddsupn,dxs,snhead) + endif + if((scalmet.gt.0).and.(scalmet.le.3))then + call sccol2(ubound,nonzeros,colpnt,obj,scalen, + x vcstat,rowidx) + call scrow2(rhs,ubound,nonzeros,rowidx,colpnt,ddsup, + x scalen,vcstat) + endif +c + do i=1,mn + scale(i)=scale(i)*scalen(i) + enddo +c + write(buff,'(1x,a)')'Scaling done...' + call mprnt(buff) + return + end +c +c ============================================================================ +c + subroutine scale1(bounds,rownzs,colpnt,obj,scale, + x vcstat,rowidx,rhs,work1,scpass,scdif,veclen, + x lognz) + + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + common/numer/ tplus,tzer + real*8 tplus,tzer + + real*8 bounds(mn),rownzs(cfree),obj(n),scale(mn), + x rhs(m),work1(mn),scdif,lognz(nz) + integer*4 rowidx(cfree),colpnt(n1),vcstat(mn),scpass,veclen(mn) +c + real*8 defic,odefic + integer*4 pass,i,j,pnt1,pnt2,nonz + character*99 buff +c + pass=0 + nonz=0 + defic= 1.0d+0 + odefic=0.0d+0 + do i=1,mn + veclen(i)=0 + enddo + do i=1,n + if(vcstat(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + if((abs(rownzs(j)).gt.tzer).and. + x (vcstat(rowidx(j)+n).gt.-2))then + lognz(j)=log(abs(rownzs(j))) + veclen(i)=veclen(i)+1 + veclen(rowidx(j)+n)=veclen(rowidx(j)+n)+1 + nonz=nonz+1 + odefic=odefic+abs(lognz(j)) + else + lognz(j)=0.0d+0 + endif + enddo + endif + enddo + do i=1,mn + if(veclen(i).eq.0)veclen(i)=1 + scale(i)=0.0d+0 + enddo + if(nonz.eq.0)goto 999 + odefic=exp(odefic/dble(nonz)) + if(odefic.le.scdif)goto 999 + 10 write(buff,'(1x,a,i2,a,d12.6)')'Pass',pass,'. Average def.',odefic + call mprnt(buff) + call sccol1(colpnt,scale, + x vcstat,rowidx,veclen,lognz) + pass=pass+1 + call scrow1(rowidx,colpnt,work1,scale,vcstat,defic,veclen,lognz) + defic=exp(defic/dble(nonz)) + if(defic.le.scdif)goto 999 + if(pass.ge.scpass)goto 999 + if(odefic.le.defic)goto 999 + odefic=defic + goto 10 + 999 write(buff,'(1x,a,i2,a,d12.6)')'Pass',pass,'. Average def.',defic + call mprnt(buff) +c +c Scaling +c + do i=1,mn + scale(i)=exp(scale(i)) + enddo + do i=1,n + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + rownzs(j)=rownzs(j)/scale(i)/scale(rowidx(j)+n) + enddo + obj(i)=obj(i)/scale(i) + bounds(i)=bounds(i)*scale(i) + enddo + do i=1,m + rhs(i)=rhs(i)/scale(i+n) + bounds(i+n)=bounds(i+n)/scale(i+n) + enddo + return + end +c +c ============================================================================ +c + subroutine scrow1(rowidx,colpnt, + x maxi,scale,excld,ss,veclen,lognz) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + real*8 lognz(nz),maxi(mn),scale(mn),ss + integer*4 rowidx(cfree),colpnt(n1),excld(mn),veclen(mn) + common/numer/ tplus,tzer + real*8 tplus,tzer +c --------------------------------------------------------------------------- + integer*4 i,j,pnt1,pnt2 + real*8 sol +c --------------------------------------------------------------------------- + ss=0 + do i=1,m + maxi(i)=0.0d+0 + enddo + do i=1,n + if(excld(i).gt.-2)then + sol=scale(i) + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + if(excld(rowidx(j)+n).gt.-2)then + maxi(rowidx(j))=maxi(rowidx(j))+lognz(j)-sol + ss=ss+abs(lognz(j)-sol-scale(rowidx(j)+n)) + endif + enddo + endif + enddo + do i=1,m + scale(n+i)=maxi(i)/veclen(i+n) + enddo + return + end +c +c =========================================================================== +c + subroutine sccol1(colpnt,scale, + x excld,rowidx,veclen,lognz) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + real*8 scale(mn),lognz(nz) + integer*4 colpnt(n1),excld(mn),rowidx(cfree),veclen(mn) + common/numer/ tplus,tzer + real*8 tplus,tzer +c --------------------------------------------------------------------------- + integer*4 i,j,pnt1,pnt2 + real*8 ma +c --------------------------------------------------------------------------- + do i=1,n + ma=0.0d+0 + if(excld(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + ma=ma+lognz(j)-scale(rowidx(j)+n) + enddo + scale(i)=ma/veclen(i) + endif + enddo + return + end +c +c =========================================================================== +c + subroutine scrow2(rhs,bounds,rownzs,rowidx, + x colpnt,maxi,scale,excld) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c + real*8 rownzs(cfree),bounds(mn),rhs(m),maxi(m),scale(mn) + integer*4 rowidx(cfree),colpnt(n1),excld(mn) +c --------------------------------------------------------------------------- + integer*4 i,j,pnt1,pnt2,k + real*8 sol +c --------------------------------------------------------------------------- + do i=1,m + maxi(i)=0 + enddo + do i=1,n + if(excld(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + k=rowidx(j) + sol=abs(rownzs(j)) + if (maxi(k).lt.sol)maxi(k)=sol + enddo + endif + enddo + do i=1,m + if(maxi(i).le.tzer)maxi(i)=1.0d+0 + scale(n+i)=maxi(i)*scale(n+i) + rhs(i)=rhs(i)/maxi(i) + bounds(i+n)=bounds(i+n)/maxi(i) + enddo + do i=1,n + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + k=rowidx(j) + rownzs(j)=rownzs(j)/maxi(k) + enddo + enddo + return + end +c +c =========================================================================== + +c + subroutine sccol2(bounds,rownzs,colpnt,obj,scale, + x excld,rowidx) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + real*8 rownzs(cfree),bounds(mn),obj(n),scale(mn) + integer*4 colpnt(n1),excld(mn),rowidx(cfree) + common/numer/ tplus,tzer + real*8 tplus,tzer +c --------------------------------------------------------------------------- + integer*4 i,j,pnt1,pnt2 + real*8 sol,ma +c --------------------------------------------------------------------------- + do i=1,n + if(excld(i).gt.-2)then + ma=0 + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + if(excld(rowidx(j)+n).gt.-2)then + sol=abs(rownzs(j)) + if (ma.lt.sol)ma=sol + endif + enddo + if (ma.le.tzer)ma=1.0d+0 + scale(i)=ma*scale(i) + do j=pnt1,pnt2 + rownzs(j)=rownzs(j)/ma + enddo + obj(i)=obj(i)/ma + bounds(i)=bounds(i)*ma + endif + enddo + return + end +c +c =========================================================================== +c + subroutine scalobj(obj,scobj,excld,objnor) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + real*8 obj(n),scobj,objnor + integer*4 excld(n),i + character*99 buff +c --------------------------------------------------------------------------- + scobj=0.0d+0 + do i=1,n + if(excld(i).gt.-2)then + if (abs(obj(i)).gt.scobj)scobj=abs(obj(i)) + endif + enddo + scobj=scobj/objnor + if(scobj.lt.1.0d-08)scobj=1.0d-08 + write(buff,'(1x,a,d8.2)')'Obj. scaled ',scobj + call mprnt(buff) + do i=1,n + obj(i)=obj(i)/scobj + enddo + return + end +c +c =========================================================================== +c + subroutine scalrhs(rhs,scrhs,excld,rhsnor,bounds,xs,up ) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + real*8 rhs(m),scrhs,rhsnor,bounds(mn),xs(mn),up(mn) + integer*4 excld(mn),i + character*99 buff +c --------------------------------------------------------------------------- + scrhs=0.0d+0 + do i=1,m + if(excld(i+n).gt.-2)then + if(abs(rhs(i)).gt.scrhs)scrhs=abs(rhs(i)) + endif + enddo + scrhs=scrhs/rhsnor + if(scrhs.lt.1.0d-08)scrhs=1.0d-08 + write(buff,'(1x,a,d8.2)')'Rhs. scaled ',scrhs + call mprnt(buff) + do i=1,m + rhs(i)=rhs(i)/scrhs + enddo + do i=1,mn + bounds(i)=bounds(i)/scrhs + xs(i)=xs(i)/scrhs + up(i)=up(i)/scrhs + enddo + return + end +c +c ============================================================================ +c Curtis-Reid Scaling algorithm +c ============================================================================ +c + subroutine scale2(bounds,rownzs,colpnt,obj,sc, + x vcstat,rowidx,rhs,scpass,scdif,scm1,rk,logsum,count) + + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + common/numer/ tplus,tzer + real*8 tplus,tzer +c + real*8 bounds(mn),rownzs(cfree),obj(n),sc(mn), + x rhs(m),scdif,scm1(mn),rk(mn),logsum(mn) + integer*4 rowidx(cfree),colpnt(n1),vcstat(mn),scpass,count(mn) +c + integer*4 i,j,in,pnt1,pnt2,pass + real*8 logdef,s,qk,qkm1,ek,ekm1,ekm2,sk,skm1 + character*99 buff +c + pass=0 + do i=1,mn + count(i)=0 + logsum(i)=0.0d+0 + enddo + logdef=0.0d+0 + in=0 + do i=1,n + if(vcstat(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + if(vcstat(rowidx(j)+n).gt.-2)then + if(abs(rownzs(j)).gt.tzer)then + s=log(abs(rownzs(j))) + count(rowidx(j)+n)=count(rowidx(j)+n)+1 + count(i)=count(i)+1 + logsum(i)=logsum(i)+s + logsum(rowidx(j)+n)=logsum(rowidx(j)+n)+s + logdef=logdef+s*s + in=in+1 + endif + endif + enddo + endif + enddo + do i=1,mn + if((vcstat(i).le.-2).or.(count(i).eq.0))count(i)=1 + enddo + logdef=sqrt(logdef)/dble(in) + logdef=exp(logdef) + write(buff,'(1x,a,i2,a,d12.6)')'Pass',pass,'. Average def.',logdef + call mprnt(buff) + if(logdef.le.scdif)then + do i=1,mn + sc(i)=1.0d+0 + enddo + goto 999 + endif +c +c Initialize +c + do i=1,m + sc(i+n)=logsum(i+n)/count(i+n) + rk(i+n)=0 + enddo + sk=0 + do i=1,n + if(vcstat(i).gt.-2)then + s=logsum(i) + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + s=s-logsum(rowidx(j)+n)/count(rowidx(j)+n) + enddo + else + s=0 + endif + rk(i)=s + sk=sk+s*s/count(i) + sc(i)=0.0d+0 + enddo + do i=1,mn + scm1(i)=sc(i) + enddo + ekm1=0 + ek=0 + qk=1.0d+0 +c +c Curtis-Reid scaling +c + 10 pass=pass+1 + do i=1,m + rk(i+n)=ek*rk(i+n) + enddo + do i=1,n + if(vcstat(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + s=rk(i)/count(i) + do j=pnt1,pnt2 + if(vcstat(rowidx(j)+n).gt.-2) + x rk(rowidx(j)+n)=rk(rowidx(j)+n)+s + enddo + endif + enddo + skm1=sk + sk=0.0d+0 + do i=1,m + rk(i+n)=-rk(i+n)/qk + sk=sk+rk(i+n)*rk(i+n)/count(i+n) + enddo + ekm2=ekm1 + ekm1=ek + ek=qk*sk/skm1 + qkm1=qk + qk=1-ek + if(pass.gt.scpass)goto 20 +c +c Update Column-scale factors +c + do i=1,n + if(vcstat(i).gt.-2)then + s=sc(i) + sc(i)=s+(rk(i)/count(i)+ekm1*ekm2*(s-scm1(i)))/qk/qkm1 + scm1(i)=s + endif + enddo +c +c even pass +c + do i=1,n + if(vcstat(i).gt.-2)then + s=ek*rk(i) + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + if(vcstat(rowidx(j)+n).gt.-2) + x s=s+rk(rowidx(j)+n)/count(rowidx(j)+n) + enddo + s=-s/qk + else + s=0 + endif + rk(i)=s + enddo + skm1=sk + sk=0.0d+0 + do i=1,n + sk=sk+rk(i)*rk(i)/count(i) + enddo + ekm2=ekm1 + ekm1=ek + ek=qk*sk/skm1 + qkm1=qk + qk=1-ek +c +c Update Row-scale factors +c + do i=1,m + j=i+n + if(vcstat(j).gt.-2)then + s=sc(j) + sc(j)=s+(rk(j)/count(j)+ekm1*ekm2*(s-scm1(j)))/qk/qkm1 + scm1(j)=s + endif + enddo + goto 10 +c +c Syncronize Column factors +c + 20 do i=1,n + if(vcstat(i).gt.-2)then + sc(i)=sc(i)+(rk(i)/count(i)+ekm1*ekm2*(sc(i)-scm1(i)))/qkm1 + endif + enddo +c +c Scaling +c + logdef=0 + do i=1,mn + if(vcstat(i).gt.-2)then + sc(i)=exp(sc(i)) + else + sc(i)=1.0d+0 + endif + enddo + do i=1,n + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + rownzs(j)=rownzs(j)/sc(i)/sc(rowidx(j)+n) + if((vcstat(rowidx(j)+n).gt.-2).and. + x (abs(rownzs(j)).gt.tzer))then + s=log(abs(rownzs(j))) + logdef=logdef+s*s + endif + enddo + obj(i)=obj(i)/sc(i) + bounds(i)=bounds(i)*sc(i) + enddo + do i=1,m + rhs(i)=rhs(i)/sc(i+n) + bounds(i+n)=bounds(i+n)/sc(i+n) + enddo + logdef=sqrt(logdef)/dble(in) + logdef=exp(logdef) + pass=pass-1 + write(buff,'(1x,a,i2,a,d12.6)')'Pass',pass,'. Average def.',logdef + call mprnt(buff) + 999 return + end +c +c ============================================================================ +c =========================================================================== +c + subroutine stlamb(colpnt,vcstat,rowidx,cnt,fixn,dropn,p) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 colpnt(n1),vcstat(mn),rowidx(nz),cnt(mn), + x fixn,dropn,p +c + common/factor/ tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens + real*8 tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens +c + common/setden/ maxdense,densgap,setlam,denslen + real*8 maxdense,densgap + integer*4 setlam,denslen +c + integer*4 i,j,pnt1,pnt2,cn,lcn,lcd,ndn,z,maxcn + real*8 la + character*99 buff +c +c --------------------------------------------------------------------------- +c + +C CMSSW: Explicit initialization needed + ndn=0 + + write(buff,'(1X)') + call mprnt(buff) + do i=1,m + cnt(i)=0 + enddo + if((m-dropn).ge.(n-fixn))then + cnt(1)=m-dropn-n+fixn + endif + maxcn=0 + do i=1,n + if(vcstat(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + cn=0 + do j=pnt1,pnt2 + if(vcstat(rowidx(j)).gt.-2)cn=cn+1 + enddo + if(cn.gt.0)cnt(cn)=cnt(cn)+1 + vcstat(i)=cn + if(maxcn.lt.cn)maxcn=cn + endif + enddo + if(setlam.lt.0)goto 70 +c + cn =maxcn + lcd=maxcn + lcn=maxcn + z=0 +C CMSSW: Explicit integer conversion needed + pnt1=int((n-fixn+m-dropn)*maxdense) + pnt2=0 + if((m-dropn).ge.1.5*(n-fixn))then + maxdense=1.0 + endif + if((m-dropn).ge.2.5*(n-fixn))then + lcn=1 + lcd=2 + goto 60 + endif +c + do while ((pnt2.le.pnt1).and.(cn.gt.0)) + if(cnt(cn).eq.0)then + z=z+1 + else + if(z.gt.0)then + if((densgap*cn*cn).le.(cn+z+1)*(cn+z+1))then + lcd=cn+z+1 + lcn=cn + ndn=pnt2 + endif + z=0 + endif + pnt2=pnt2+cnt(cn) + endif + cn=cn-1 + enddo +c + 60 write(buff,'(1X,A,I6)')'Largest sparse column length :',lcn + call mprnt(buff) + if((maxcn.le.denslen).or.(lcn.eq.maxcn))then + write(buff,'(1X,A)')'Problem has no dense columns' + call mprnt(buff) + lcn=maxcn + else + write(buff,'(1X,A,I6)')'Smallest dense column length :',lcd + call mprnt(buff) + write(buff,'(1X,A,I6)')'Number of dense columns :',ndn + call mprnt(buff) + endif + la=lcn+0.5 + la=la/m + write(buff,'(1X,A,F7.4)')'Computed density parameter : ',la + call mprnt(buff) + if(la.gt.lam)then + lam=la + else + write(buff,'(1X,A,F7.4)') 'Parameter reset to value : ',lam + call mprnt(buff) + endif + 70 lam=lam*m + p=1 + if((lam.ge.maxcn).and.(setlam.le.0))p=2 + if(supdens.le.lam)supdens=lam +c + write(buff,'(1X)') + call mprnt(buff) + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine symmfo(inta1,pivots,ecolpnt,vcstat, + x colpnt,rowidx,rowpnt,colindex,perm,invperm, + x count,inta2,inta3,inta4,inta5,inta6,inta7,inta8,inta9, + x inta10,inta11,nonzeros,l,oper,tfind,inta12,code) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 inta1(mn),ecolpnt(mn),pivots(mn),vcstat(mn), + x colpnt(n1),rowidx(cfree),rowpnt(mn),colindex(rfree), + x perm(mn),invperm(mn),count(mn),inta2(mn),inta3(mn),inta4(mn), + x inta5(mn),inta6(mn),inta7(mn),inta8(mn),inta9(mn),inta10(mn), + x inta11(mn),tfind,inta12(mn),l,code +c + real*8 nonzeros(cfree),oper +c + integer*4 i,j,k,t1,tt1,t2,p1,p2,pnt,pnt1,pnt2,aatnz + character*99 buff +c +c --------------------------------------------------------------------------- +c + 1 format(1x,'Building aat time:',f9.2,' sec') + 2 format(1x,'Building ordering list time:',f9.2,' sec') + 4 format(1x,'Symbolic factorisation time:',f9.2,' sec') + 5 format(1x,'Total symbolic phase time:',f9.2,' sec') + 6 format(1x,'Sub-diagonal nonzeros in aat :',i9) + 7 format(1x,'Sub-diagonal nonzeros in L :',i9) + 8 format(1x,'NONZEROS :',i12) + 9 format(1x,'OPERATIONS :',f13.0) + 10 format(1x,'Minimum Local Fill-in Ordering with Power:',i3) + 11 format(1x,'Minimum Degree Ordering (Power=0)') + 12 format(1x,'Without Ordering') +c + call timer (tt1) + if(tfind.lt.0)then + write(buff,12) + else if(tfind.eq.0)then + write(buff,11) + else + write(buff,10)tfind + endif + oper=0.0d+0 + call mprnt(buff) + do i=1,nz + rowidx(i)=rowidx(i)-n + enddo + if(rfree.lt.nz)then + write(buff,'(1x,a)')'Not enough integer memory' + call mprnt(buff) + code=-2 + goto 999 + endif + if(cfree.lt.2*nz)then + write(buff,'(1x,a)')'Not enough real memory' + call mprnt(buff) + code=-2 + goto 999 + endif +c +c If no ordering... +c + if(tfind.lt.0)then + t2=tt1 + do i=1,m + perm(i)=i + enddo + goto 50 + endif +c +c Otherwise... +c + do i=1,n + inta2(i)=i + enddo + call transps(n,m,nz,colpnt,rowidx,nonzeros, + x rowpnt,colindex,nonzeros(nz+1),inta2) + k=1 + l=m + do i=1,m + pivots(i)=0 + if(vcstat(i+n).le.-2)then + invperm(l)=i + l=l-1 + else + invperm(k)=i + k=k+1 + endif + enddo + call transps(m,n,nz,rowpnt,colindex,nonzeros(nz+1), + x colpnt,rowidx,nonzeros,invperm) + do i=1,n + p1=colpnt(i) + if(vcstat(i).le.-2)then + p2=colpnt(i)-1 + else + p2=colpnt(i+1)-1 + 19 if((p1.le.p2).and.(vcstat(rowidx(p2)+n).le.-2))then + p2=p2-1 + goto 19 + endif + endif + perm(i)=p1 + invperm(i)=p2 + enddo +c + pnt=nz+1 + do i=1,m + if(pnt+mn.gt.cfree)then + write(buff,'(1x,a)')'Not enough real memory' + call mprnt(buff) + code=-2 + goto 999 + endif + pivots(i)=1 + if(vcstat(i+n).gt.-2)then + ecolpnt(i)=pnt + pnt1=rowpnt(i) + pnt2=rowpnt(i+1)-1 + do j=pnt1,pnt2 + k=colindex(j) + if(vcstat(k).gt.-2)then + p1=perm(k) + p2=invperm(k) + perm(k)=perm(k)+1 + do l=p1,p2 + if(pivots(rowidx(l)).eq.0)then + pivots(rowidx(l))=1 + rowidx(pnt)=rowidx(l) + pnt=pnt+1 + endif + enddo + endif + enddo + count(i)=pnt-ecolpnt(i) + do j=ecolpnt(i),pnt-1 + pivots(rowidx(j))=0 + enddo + endif + enddo + aatnz=pnt-nz-1 +c +c + call timer (t2) + write(buff,1)dble(t2-tt1)/100.0d+0 + call mprnt(buff) +c +c call minimum fill-in ordering +c + call genmfo(m,mn,nz,cfree,rfree,pivotn, + x ecolpnt,count,perm,rowpnt,vcstat(n+1),rowidx, + x invperm,inta1,inta2,inta3,inta4,inta5,inta6,inta7, + x inta8,inta9,inta10,inta11,colindex,tfind,inta12,pivots,code) + if(code.lt.0)goto 999 +c +c + 50 call timer(t1) + write(buff,2)dble(t1-t2)/100.0d+0 + call mprnt(buff) +c + pivotn=0 + do 30 i=1,n + ecolpnt(i)=colpnt(i) + count(i)=colpnt(i+1)-1 + inta2(i)=i + if(vcstat(i).le.-2)goto 30 + pivotn=pivotn+1 + pivots(pivotn)=i + 30 continue +c + call transps(n,m,nz,colpnt,rowidx,nonzeros, + x rowpnt,colindex,nonzeros(nz+1),inta2) +c + k=1 + l=m + do 40 i=1,m + j=perm(i) + if(vcstat(j+n).le.-2)then + invperm(l)=j + l=l-1 + else + pivotn=pivotn+1 + pivots(pivotn)=j+n + invperm(k)=j + k=k+1 + endif + 40 continue +c + call transps(m,n,nz,rowpnt,colindex,nonzeros(nz+1), + x colpnt,rowidx,nonzeros,invperm) +c + do 20 i=1,nz + rowidx(i)=rowidx(i)+n + 20 continue +c + do i=1,n + if(vcstat(i).gt.-2)then + k=ecolpnt(i) + l=count(i) + 35 if((l.ge.k).and.(vcstat(rowidx(l)).le.-2))then + l=l-1 + goto 35 + endif + count(i)=l + endif + enddo +c + call symfact(pivots,rowidx,ecolpnt,count,vcstat, + x perm,invperm,inta2,inta1,l,code) + if(code.lt.0)goto 999 + call timer(t2) + write(buff,4)dble(t2-t1)/100.0d+0 + call mprnt(buff) + if(tfind.ge.0)then + write(buff,6)aatnz + call mprnt(buff) + endif + write(buff,7)l + call mprnt(buff) +c + do 55 i=1,mn + inta1(i)=0 + 55 continue + l=0 + do 60 i=1,pivotn + j=pivots(pivotn-i+1) + k=count(j)-ecolpnt(j)+1 + if(k.eq.0)goto 60 + l=l+k + inta1(j)=inta1(rowidx(ecolpnt(j)))+k + oper=oper+(dble(k)*dble(k)+dble(k))/2.0d+0 + 60 continue + call timer(t1) + write(buff,5)dble(t2-tt1)/100.0d+0 + call mprnt(buff) + write(buff,8)l + call mprnt(buff) + write(buff,9)oper + call mprnt(buff) +c + 999 return + end +c +c =========================================================================== +c Minimum local fill-in ordering +c +c =========================================================================== +c + subroutine genmfo(m,mn,nz,cfree,rfree,pivotn, + x pntc,ccol,permut,pntr,crow,rowidx, + x mark,cpermf,cpermb,rpermf,rpermb,cfill,rfill,cpnt, + x cnext,cprew,suplst,fillin,colidx,tfind,noddeg,supdeg,code) +c + integer*4 m,mn,nz,cfree,rfree,pivotn,rowidx(cfree),colidx(rfree), + x permut(m),cpermf(m),cpermb(m),rpermf(m),rpermb(m), + x ccol(m),crow(m),pntc(m),pntr(m),mark(m),cfill(m),cpnt(m), + x cnext(m),cprew(m),rfill(m),suplst(m),fillin(m),tfind, + x noddeg(m),supdeg(m),code + character*99 buff +c +c --------------------------------------------------------------------------- +c INPUT PARAMETERS +c +c m number of rows +c mn an number greather than m +c nz last used position of the column file +c cfree length of the column file (column file is used from nz+1 to cfree) +c rfree length of the row file (row file is used from 1 to rfree) +c rowidx column file (containing the lower tiriangular part of AAT) +c colidx row file +c pntc pointer to the columns of the lower diagonal of AAT +c ccol column lengths of AAT +c crow if crow(i)<-1 row i is removed from the ordering +c tfind search loop, tfind=0 gives the minimum degree ordering +c suggested value tfind=25 +c +c +c OUTPUT PARAMETERS +c permut the ordering +c pivotn Number of ordered nodes +c +c +c Others: Integer working arrays of size m +c +c +c -------------------------------------------------------------------------- + integer*4 pnt,pnt1,pnt2,i,j,k,l,o,p,endmem,ccfree,rcfree,pmode, + x rfirst,rlast,cfirst,clast,pcol,pcnt,ppnt1,ppnt2,fill,prewcol, + x ii,mm,mfill,supnd,hsupnd,oo,nnz,fnd,oldpcol,q,fl +c--------------------------------------------------------------------------- +c + 1 format(' NOT ENOUGH MEMORY IN THE ROW FILE ') + 2 format(' NOT ENOUGH MEMORY IN THE COLUMN FILE ') + 3 format(' Analyse for supernodes in aat :',i9,' col') + 4 format(' Final supernodal columns disabled:',i9,' col') + 5 format(' Hidden supernodal columns :',i9,' col') + +C CMSSW: Explicit initialization needed + clast=0 +c +c initialization +c + code=0 + endmem=cfree + pivotn=0 + pmode =0 + do i=1,m + permut(i)=0 + suplst(i)=0 + fillin(i)=-1 + supdeg(i)=1 + if(crow(i).gt.-2)then + crow(i)=0 + endif + enddo +c +c Compute crow +c + do 10 i=1,m + if(crow(i).le.-2)goto 10 + pnt1=pntc(i) + pnt2=pnt1+ccol(i)-1 + do j=pnt1,pnt2 + crow(rowidx(j))=crow(rowidx(j))+1 + enddo + clast=i + 10 continue + cpermf(clast)=0 + ccfree=cfree-pntc(clast)-ccol(clast) + if(ccfree.lt.mn)then + write(buff,2) + call mprnt(buff) + code=-2 + goto 999 + endif +c +c create pointers to colidx +c + do i=1,m + cprew(i)=0 + enddo + pnt=1 + do i=1,m + if(crow(i).ge.0)then + pntr(i)=pnt + rfill(i)=pnt + pnt=pnt+crow(i) + endif + enddo + rcfree=rfree-pnt + if(rcfree.lt.mn)then + write(buff,1) + call mprnt(buff) + code=-2 + goto 999 + endif +c +c create the row file : symbolical transps the matrix, set up noddeg +c + do i=1,m + noddeg(i)=ccol(i)+crow(i) + if(crow(i).ge.0)then + pnt1=pntc(i) + pnt2=pnt1+ccol(i)-1 + do j=pnt1,pnt2 + k=rowidx(j) + colidx(rfill(k))=i + rfill(k)=rfill(k)+1 + enddo + endif + enddo +c +c Search supernodes +c + hsupnd=0 + supnd=0 + do i=1,m + if(crow(i).ge.0)then + pnt1=pntr(i) + pnt2=pnt1+crow(i)-1 + do j=pnt1,pnt2 + mark(colidx(j))=i + enddo + mark(i)=i + pnt1=pntc(i) + pnt2=pnt1+ccol(i)-1 + do j=pnt1,pnt2 + mark(rowidx(j))=i + enddo + p=ccol(i)+crow(i) + 118 if (pnt1.le.pnt2)then + o=rowidx(pnt1) + call chknod(m,cfree,rfree,i,o,p,ccol,crow,mark,pntc, + x pntr,rowidx,colidx,supdeg,suplst,ii) + supnd=supnd+ii + pnt1=pnt1-ii + pnt2=pnt2-ii + pnt1=pnt1+1 + goto 118 + endif + endif + enddo + write(buff,3)supnd + call mprnt(buff) +c +c Set up lists +c + do i=1,m + mark(i)=0 + cpnt(i)=0 + cnext(i)=0 + enddo + cfirst=0 + clast=0 + rfirst=0 + rlast=0 + mm=0 + do i=1,m + if(crow(i).ge.0)then + mm=mm+1 + if(cfirst.eq.0)then + cfirst=i + else + cpermf(clast)=i + endif + cpermb(i)=clast + clast=i +c + if(rfirst.eq.0)then + rfirst=i + else + rpermf(rlast)=i + endif + rpermb(i)=rlast + rlast=i +c + j=noddeg(i)-supdeg(i)+2 + if(j.gt.0)then + o=cpnt(j) + cnext(i)=o + cpnt(j)=i + if(o.ne.0)cprew(o)=i + endif + cprew(i)=0 + endif + enddo + cpermf(clast)=0 + rpermf(rlast)=0 + pcol=0 +c +c loop for pivots +c + 50 oldpcol=pcol + pcol=0 + nnz=1 + if(oldpcol.eq.0)goto 9114 +c +c Find supernodal pivot +c + mfill=0 + k=pntc(oldpcol) + l=k+ccol(oldpcol)-1 + oo=ccol(oldpcol)-1 +9125 if(k.gt.l)goto 9114 + j=rowidx(k) + if(crow(j)+ccol(j).eq.oo)then + hsupnd=hsupnd+1 + pcol=j + goto 9200 + endif + k=k+1 + goto 9125 +c +c Find another pivot +c +9114 pmode=0 + fnd=0 + mfill=-1 +9110 j=cpnt(nnz) + if((j.gt.0).and.(pmode.eq.0))then + pmode=nnz + if(tfind.eq.0)then + pcol=j + mfill=1 + goto 9200 + endif + endif +9120 if(j.le.0)goto 9150 + if(fillin(j).ge.0)then + fill=fillin(j) + goto 9175 + endif +c +c set up mark and cfill +c + q=0 + fill=0 + k=pntc(j) + l=k+ccol(j)-1 + p=0 + do o=k,l + q=q+1 + cfill(q)=rowidx(o) + mark(rowidx(o))=supdeg(rowidx(o)) + fill=fill-(supdeg(rowidx(o))*(supdeg(rowidx(o))-1))/2 + enddo + k=pntr(j) + l=k+crow(j)-1 + do o=k,l + q=q+1 + cfill(q)=colidx(o) + mark(colidx(o))=supdeg(colidx(o)) + fill=fill-(supdeg(colidx(o))*(supdeg(colidx(o))-1))/2 + enddo +c +c compute fill-in +c + fill=fill+((noddeg(j)-supdeg(j))*(noddeg(j)-supdeg(j)+1))/2 + do p=1,q + fl=0 + o=cfill(p) + k=pntc(o) + l=k+ccol(o)-1 + do oo=k,l + fl=fl+mark(rowidx(oo)) + enddo + fill=fill-supdeg(o)*fl + enddo +c +c administration +c + do o=1,q + mark(cfill(o))=0 + enddo +c +c Test +c + fillin(j)=fill +9175 if(mfill.lt.0)mfill=fill+1 + if(fill.lt.mfill)then + mfill=fill + pcol=j + endif + fnd=fnd+1 + if((fnd.gt.tfind).or.(mfill.eq.0))goto 9200 + j=cnext(j) + goto 9120 +c +c next bunch +c +9150 nnz=nnz+1 + if(nnz.le.m)goto 9110 +9200 if (pcol.eq.0)goto 900 + endmem=cfree + ccfree=cfree-pntc(clast)-ccol(clast) + rcfree=rfree-pntr(rlast)-crow(rlast) +c +c compress column file +c + if(ccfree.lt.mn)then + call mccmpr(mn,cfree,ccfree,endmem,nz, + x pntc,ccol,cfirst,cpermf,rowidx,code) + if(code.lt.0)goto 999 + endif +c +c remove pcol from the cpermf lists +c + prewcol=cpermb(pcol) + o=cpermf(pcol) + if(prewcol.ne.0)then + cpermf(prewcol)=o + else + cfirst=o + endif + if(o.eq.0)then + clast=prewcol + else + cpermb(o)=prewcol + endif +c +c remove pcol from the rpermf lists +c + prewcol=rpermb(pcol) + o=rpermf(pcol) + if(prewcol.ne.0)then + rpermf(prewcol)=o + else + rfirst=o + endif + if(o.eq.0)then + rlast=prewcol + else + rpermb(o)=prewcol + endif +c +c administration +c + pivotn=pivotn+1 + permut(pivotn)=pcol + pcnt=ccol(pcol)+crow(pcol) +c +c remove pcol from the counter lists +c + o=cnext(pcol) + ii=cprew(pcol) + if(ii.eq.0)then + cpnt(noddeg(pcol)-supdeg(pcol)+2)=o + else + cnext(ii)=o + endif + if(o.ne.0)cprew(o)=ii +c + ppnt1=endmem-pcnt + ppnt2=ppnt1+pcnt-1 + endmem=endmem-pcnt + ccfree=ccfree-pcnt + pnt=ppnt1 +c +c create pivot column from the row file +c + pnt1=pntr(pcol) + pnt2=pnt1+crow(pcol)-1 + do 70 i=pnt1,pnt2 + o=colidx(i) + l=pntc(o) + p=l+ccol(o)-1 +c +c find element and move in the column o +c + cfill(o)=ccol(o)-1 + rfill(o)= 0 + do 75 k=l,p + if(rowidx(k).eq.pcol)then + mark(o)=1 + rowidx(pnt)=o + pnt=pnt+1 + rowidx(k)=rowidx(p) + goto 70 + endif + 75 continue + 70 continue + mm=pnt +c +c extend pivot column from the column file +c + pnt1=pntc(pcol) + pnt2=pnt1+ccol(pcol)-1 + do 60 j=pnt1,pnt2 + o=rowidx(j) + mark(o)=1 + rowidx(pnt)=o + pnt=pnt+1 +c +c remove pcol from the row file +c + rfill(o)=-1 + cfill(o)=ccol(o) + l=pntr(o) + p=l+crow(o)-2 + do 55 k=l,p + if(colidx(k).eq.pcol)then + colidx(k)=colidx(p+1) + goto 60 + endif + 55 continue + 60 continue + pntc(pcol)=ppnt1 + ccol(pcol)=pcnt +c +c remove columns from the counter lists +c + do 77 j=ppnt1,ppnt2 + i=rowidx(j) + o=cnext(i) + ii=cprew(i) + if(ii.eq.0)then + cpnt(noddeg(i)-supdeg(i)+2)=o + else + cnext(ii)=o + endif + if(o.ne.0)cprew(o)=ii + 77 continue +c +c elimination loop +c + if(mfill.gt.0)then +c + if(ppnt1.lt.mm)call hpsort((mm-ppnt1),rowidx(ppnt1)) + if(mm.lt.ppnt2)call hpsort((ppnt2-mm+1),rowidx(mm)) +c + do 80 p=ppnt1,ppnt2 + i=rowidx(p) +c +c delete element from mark +c + mark(i)=0 + pcnt=pcnt-1 +c +c transformation on the column i +c + fill=pcnt + pnt1=pntc(i) + pnt2=pnt1+cfill(i)-1 + do 90 k=pnt1,pnt2 + o=rowidx(k) + if(mark(o).ne.0)then + fill=fill-1 + mark(o)=0 + endif + 90 continue +c +c compute the free space +c + ii=cpermf(i) + if(ii.eq.0)then + k=endmem-pnt2-1 + else + k=pntc(ii)-pnt2-1 + endif +c +c move column to the end of the column file +c + if(fill.gt.k)then + if (ccfree.lt.mn)then + call mccmpr(mn,cfree,ccfree,endmem,nz, + x pntc,ccol,cfirst,cpermf,rowidx,code) + if(code.lt.0)goto 999 + pnt1=pntc(i) + pnt2=pnt1+cfill(i)-1 + endif + if(i.ne.clast)then + l=pntc(clast)+ccol(clast) + pntc(i)=l + do 95 k=pnt1,pnt2 + rowidx(l)=rowidx(k) + l=l+1 + 95 continue + pnt1=pntc(i) + pnt2=l-1 + prewcol=cpermb(i) + if(prewcol.eq.0)then + cfirst=ii + else + cpermf(prewcol)=ii + endif + cpermb(ii)=prewcol + cpermf(clast)=i + cpermb(i)=clast + clast=i + cpermf(clast)=0 + endif + endif +c +c create fill in +c + do 97 k=p+1,ppnt2 + o=rowidx(k) + if(mark(o).eq.0)then + mark(o)=1 + else + pnt2=pnt2+1 + rowidx(pnt2)=o + rfill(o)=rfill(o)+1 + endif + 97 continue + pnt2=pnt2+1 + ccol(i)=pnt2-pnt1 + if(i.eq.clast)then + ccfree=endmem-pnt2-1 + endif + 80 continue + else + do p=ppnt1,ppnt2 + i=rowidx(p) + ccol(i)=ccol(i)-1-rfill(i) + mark(i)=0 + enddo + endif +c +c make space for fills in the row file +c + do 100 j=ppnt1,ppnt2 + i=rowidx(j) + if(mfill.eq.0)goto 135 + pnt2=pntr(i)+crow(i)-1 +c +c compute the free space +c + ii=rpermf(i) + if(ii.eq.0)then + k=rfree-pnt2-1 + else + k=pntr(ii)-pnt2-1 + endif +c +c move row to the end of the row file +c + if(k.lt.rfill(i))then + if(rcfree.lt.mn)then + call rcomprs(mn,rfree, + x rcfree,pntr,crow,rfirst,rpermf,colidx,code) + if(code.lt.0)goto 999 + endif + if(ii.ne.0)then + pnt1=pntr(i) + pnt2=pnt1+crow(i)-1 + pnt=pntr(rlast)+crow(rlast) + pntr(i)=pnt + do 110 l=pnt1,pnt2 + colidx(pnt)=colidx(l) + pnt=pnt+1 + 110 continue +c +c update the rperm lists +c + prewcol=rpermb(i) + if(prewcol.eq.0)then + rfirst=ii + else + rpermf(prewcol)=ii + endif + rpermb(ii)=prewcol + rpermf(rlast)=i + rpermb(i)=rlast + rlast=i + rpermf(rlast)=0 + endif + endif + 135 crow(i)=crow(i)+rfill(i) + if(i.eq.rlast)rcfree=rfree-crow(i)-pntr(i) + noddeg(i)=noddeg(i)-supdeg(pcol) + 100 continue + if(mfill.eq.0)goto 150 +c +c make pointers to the end of the filled rows +c + do 120 j=ppnt1,ppnt2 + rfill(rowidx(j))=pntr(rowidx(j))+crow(rowidx(j))-1 + 120 continue +c +c generate fill-in in the row file, update noddeg +c + do j=ppnt1,ppnt2 + o=rowidx(j) + pnt1=pntc(o)+cfill(o) + pnt2=pntc(o)+ccol(o)-1 + do k=pnt1,pnt2 + colidx(rfill(rowidx(k)))=o + rfill(rowidx(k))=rfill(rowidx(k))-1 + noddeg(o)=noddeg(o)+supdeg(rowidx(k)) + noddeg(rowidx(k))=noddeg(rowidx(k))+supdeg(o) + enddo + enddo +c +c Indicate new fill-in computation +c + if(tfind.gt.0)then + do j=ppnt1,ppnt2 + i=rowidx(j) + fillin(i)=-1 + pnt1=pntc(i)+cfill(i) + pnt2=pntc(i)+ccol(i)-1 + do pnt=pnt1,pnt2 + ii=rowidx(pnt) + if(rfill(ii).ge.0)then + k=pntc(ii) + l=k+ccol(ii)-1 + do o=k,l + fillin(rowidx(o))=-1 + enddo + k=pntr(ii) + l=k+crow(ii)-1 + do o=k,l + fillin(colidx(o))=-1 + enddo + rfill(ii)=-1 + endif + enddo + enddo + endif +c +c Searching for new supernodes +c + 150 l=0 + j=ppnt1 + 151 if(j.le.ppnt2)then + i=rowidx(j) + p=ccol(i)+crow(i) +c + pnt1=pntc(i) + pnt2=pnt1+ccol(i)-1 + do k=pnt1,pnt2 + if(mark(rowidx(k)).eq.0)then + l=l+1 + cfill(l)=rowidx(k) + endif + mark(rowidx(k))=i + enddo +c + if(mark(i).eq.0)then + l=l+1 + cfill(l)=i + endif + mark(i)=i +c + pnt1=pntr(i) + pnt2=pnt1+crow(i)-1 + do k=pnt1,pnt2 + if(mark(colidx(k)).eq.0)then + l=l+1 + cfill(l)=colidx(k) + endif + mark(colidx(k))=i + enddo +c + k=j+1 + 152 if(k.le.ppnt2)then + o=rowidx(k) + call chknod(m,cfree,rfree,i,o,p,ccol,crow,mark,pntc, + x pntr,rowidx,colidx,supdeg,suplst,ii) + if(ii.gt.0)then + supnd=supnd+1 +c + prewcol=cpermb(o) + oo=cpermf(o) + if(prewcol.ne.0)then + cpermf(prewcol)=oo + else + cfirst=oo + endif + if(oo.eq.0)then + clast=prewcol + else + cpermb(oo)=prewcol + endif +c + prewcol=rpermb(o) + oo=rpermf(o) + if(prewcol.ne.0)then + rpermf(prewcol)=oo + else + rfirst=oo + endif + if(oo.eq.0)then + rlast=prewcol + else + rpermb(oo)=prewcol + endif +c + rowidx(k)=rowidx(ppnt2) + k=k-1 + ppnt2=ppnt2-1 + ccol(pcol)=ccol(pcol)-1 + endif + k=k+1 + goto 152 + endif + j=j+1 + goto 151 + endif + do i=1,l + mark(cfill(i))=0 + enddo +c +c update the counter lists +c + do j=ppnt1,ppnt2 + i=rowidx(j) + fill=noddeg(i)-supdeg(i)+2 + o=cpnt(fill) + cnext(i)=o + cpnt(fill)=i + if(o.ne.0)cprew(o)=i + cprew(i)=0 + enddo +c +c Augment the permutation with the supernodes +c + i=suplst(pcol) + 155 if(i.gt.0)then + pivotn=pivotn+1 + permut(pivotn)=i + i=suplst(i) + goto 155 + endif + goto 50 +c +c Augment the permutation with the disabled rows +c + 900 do i=1,m + if(crow(i).le.-2)then + pivotn=pivotn+1 + permut(pivotn)=i + endif + enddo + write(buff,4)supnd + call mprnt(buff) + write(buff,5)hsupnd + call mprnt(buff) +c +c Ready +c + 999 return + end +c +c =========================================================================== +c + subroutine mccmpr(mn,cfree,ccfree,endmem,nz, + x pnt,count,cfirst,cpermf,rowidx,code) + integer*4 mn,cfree,ccfree,endmem,nz,pnt(mn),rowidx(cfree), + x count(mn),cpermf(mn),cfirst,code +c + integer*4 i,j,pnt1,pnt2,pnt0 + character*99 buff +c --------------------------------------------------------------------------- + 2 format(' NOT ENOUGH MEMORY DETECTED IN SUBROUTINE CCOMPRESS') + pnt0=nz+1 + i=cfirst + 40 if(i.le.0)goto 30 + pnt1=pnt(i) + if(pnt1.lt.pnt0)goto 10 + if(pnt1.eq.pnt0)then + pnt0=pnt0+count(i) + goto 10 + endif + pnt(i)=pnt0 + pnt2=pnt1+count(i)-1 + do 20 j=pnt1,pnt2 + rowidx(pnt0)=rowidx(j) + pnt0=pnt0+1 + 20 continue + 10 i=cpermf(i) + goto 40 + 30 ccfree=endmem-pnt0-1 + if(ccfree.lt.mn)then + write(buff,2) + call mprnt(buff) + code=-2 + endif + return + end +c +c =========================================================================== +c + subroutine chknod(m,cfree,rfree,i,o,p,ccol,crow,mark,pntc, + x pntr,rowidx,colidx,supdeg,suplst,fnd) +c + integer*4 m,cfree,rfree,i,o,p,ccol(m),crow(m),mark(m),pntc(m), + x pntr(m),rowidx(cfree),colidx(rfree),supdeg(m),suplst(m),fnd +c + integer*4 ppnt1,ppnt2,k,l,pnt,ii,pnod +c + fnd=0 + if(ccol(o)+crow(o).ne.p)goto 120 + ppnt1=pntr(o) + ppnt2=ppnt1+crow(o)-1 + 111 if(ppnt1.le.ppnt2)then + if(mark(colidx(ppnt1)).ne.i)goto 119 + ppnt1=ppnt1+1 + goto 111 + endif + ppnt1=pntc(o) + ppnt2=ppnt1+ccol(o)-1 + 112 if(ppnt1.le.ppnt2)then + if(mark(rowidx(ppnt1)).ne.i)goto 119 + ppnt1=ppnt1+1 + goto 112 + endif +c +c include column o (and its list) in to the list of column i +c + pnod=o + 211 if(suplst(pnod).ne.0)then + pnod=suplst(pnod) + goto 211 + endif + suplst(pnod)=suplst(i) + suplst(i)=o + supdeg(i)=supdeg(i)+supdeg(o) +c +c remove column/row o from the row and column files +c + ppnt1=pntr(o) + ppnt2=ppnt1+crow(o)-1 + do 124 k=ppnt1,ppnt2 + l=colidx(k) + pnt=pntc(l) + ii=pnt+ccol(l)-1 + ccol(l)=ccol(l)-1 + 123 if(pnt.le.ii)then + if(rowidx(pnt).eq.o)then + rowidx(pnt)=rowidx(ii) + goto 124 + endif + pnt=pnt+1 + goto 123 + endif + 124 continue + ppnt1=pntc(o) + ppnt2=ppnt1+ccol(o)-1 + do 127 k=ppnt1,ppnt2 + l=rowidx(k) + pnt=pntr(l) + ii=pnt+crow(l)-1 + crow(l)=crow(l)-1 + 126 if(pnt.le.ii)then + if(colidx(pnt).eq.o)then + colidx(pnt)=colidx(ii) + goto 127 + endif + pnt=pnt+1 + goto 126 + endif + 127 continue + crow(o)=-1 + p=p-1 + fnd=1 + goto 120 + 119 fnd=0 + 120 return + end +c +c =========================================================================== +c + subroutine hpsort(n,iarr) +c + integer*4 n,iarr(n) +c + integer*4 i,j,l,ir,rra +c +c --------------------------------------------------------------------------- +c + l=n/2+1 + ir=n + 10 if(l.gt.1)then + l=l-1 + rra=iarr(l) + else + rra=iarr(ir) + iarr(ir)=iarr(1) + ir=ir-1 + if(ir.le.1)then + iarr(1)=rra + goto 999 + endif + endif + i=l + j=l+l + 20 if(j-ir)40,50,60 + 40 if(iarr(j).lt.iarr(j+1))j=j+1 + 50 if(rra.lt.iarr(j))then + iarr(i)=iarr(j) + i=j + j=j+j + else + j=ir+1 + endif + goto 20 + 60 iarr(i)=rra + goto 10 + 999 return + end +c +c =========================================================================== +c ========================================================================== +c + subroutine symfact (pivots,rowidx,ecolpnt,count, + x vcstat,list,next,work,mark,fill,code) + + + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 pivots(mn),ecolpnt(mn),count(mn),vcstat(mn), + x list(mn),next(mn),work(mn),mark(mn),rowidx(cfree),code +c + integer*4 i,ii,j,k,l,pnt1,pnt2,fnz,kprew,fill + character*99 buff +c +c -------------------------------------------------------------------------- +c + fnz=nz+1 +c + do 10 i=1,mn + list(i)=0 + next(i)=0 + mark(i)=0 + work(i)=mn+1 + 10 continue + do 15 i=1,pivotn + work(pivots(i))=i + 15 continue + do 20 i=1,n + if(vcstat(i).le.-2)goto 20 + j=rowidx(ecolpnt(i)) + next(i)=list(j) + list(j)=i + 20 continue +c + do 50 ii=1,pivotn + i=pivots(ii) + mark(i)=1 + if(i.le.n)goto 50 + l=fnz + ecolpnt(i)=fnz + kprew=list(i) + 60 if(kprew.eq.0)goto 70 + pnt1=ecolpnt(kprew) + pnt2=count(kprew) + if(fnz.ge.cfree-m)then + write(buff,'(1x,a)')'Not enough memory' + call mprnt(buff) + code=-2 + goto 999 + endif + do j=pnt1,pnt2 + k=rowidx(j) + if(mark(k).eq.0)then + mark(k)=1 + rowidx(fnz)=k + fnz=fnz+1 + endif + enddo + kprew=next(kprew) + goto 60 + + 70 do j=l,fnz-1 + mark(rowidx(j))=0 + enddo + count(i)=fnz-1 + k=fnz-l + if(k.gt.0)then + call hpsrt(k,mn,rowidx(l),work) + j=rowidx(l) + next(i)=list(j) + list(j)=i + endif + 50 continue + fill=fnz-nz-1 + 999 return + end +c +c =========================================================================== +c + subroutine transps(n,m,nz,colpnt,rowidx,colnz, + x rowpnt,colindex,rownz,perm) +c + integer*4 n,m,nz,colpnt(n+1),rowidx(nz),rowpnt(m+1), + x colindex(nz),perm(n) + real*8 colnz(nz),rownz(nz) + +c + integer*4 i,j,k,pnt1,pnt2,ii +c +c --------------------------------------------------------------------------- +c + do 10 i=1,m+1 + rowpnt(i)=0 + 10 continue + do 20 i=1,n + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do 30 j=pnt1,pnt2 + k=rowidx(j) + rowpnt(k)=rowpnt(k)+1 + 30 continue + 20 continue +c + j=rowpnt(1) + k=1 + do 40 i=1,m + rowpnt(i)=k + k=k+j + j=rowpnt(i+1) + 40 continue +c + do 50 ii=1,n + i=perm(ii) + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do 60 j=pnt1,pnt2 + k=rowidx(j) + colindex(rowpnt(k))=i + rownz(rowpnt(k))=colnz(j) + rowpnt(k)=rowpnt(k)+1 + 60 continue + 50 continue +c + do 70 i=1,m + rowpnt(m-i+2)=rowpnt(m-i+1) + 70 continue + rowpnt(1)=1 + return + end +c +c ========================================================================= +c + subroutine hpsrt(n,mn,iarr,index) +c + integer*4 n,mn,iarr(n),index(mn) +c + integer*4 i,j,l,ir,rra +c +c --------------------------------------------------------------------------- +c + l=n/2+1 + ir=n + 10 if(l.gt.1)then + l=l-1 + rra=iarr(l) + else + rra=iarr(ir) + iarr(ir)=iarr(1) + ir=ir-1 + if(ir.le.1)then + iarr(1)=rra + goto 999 + endif + endif + i=l + j=l+l + 20 if(j-ir)40,50,60 + 40 if(index(iarr(j)).lt.index(iarr(j+1)))j=j+1 + 50 if(index(rra).lt.index(iarr(j)))then + iarr(i)=iarr(j) + i=j + j=j+j + else + j=ir+1 + endif + goto 20 + 60 iarr(i)=rra + goto 10 + 999 if(n.gt.0)then + if(index(iarr(n)).gt.mn)then + n=n-1 + goto 999 + endif + endif + return + end +c +c =========================================================================== +c ========================================================================== +c + subroutine newsmf(colpnt,pivots,rowidx,cnonz,ecolpnt,count, + x vcstat,invprm,snhead,nodtyp,mark,workr,list,prew,next,code) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + common/logprt/ loglog,lfile + integer*4 loglog,lfile +c + integer*4 pivots(mn),ecolpnt(mn),count(mn),vcstat(mn), + x invprm(mn),snhead(mn),nodtyp(mn),mark(mn),rowidx(cfree), + x colpnt(n1),list(mn),prew(mn),next(mn),code + real*8 cnonz(nz),workr(mn) +c + integer*4 i,ii,j,k,l,o,pnt1,pnt2,fnz,kprew + character*99 buff +c +c -------------------------------------------------------------------------- +c + fnz=nz+1 +c +c Restructuring the ordering +c + k=0 + l=mn+1 + do i=1,pivotn + j=pivots(i) + if(vcstat(j).gt.-1)then + k=k+1 + invprm(k)=j + else if(vcstat(j).eq.-1)then + l=l-1 + invprm(l)=j + endif + enddo +c + write(buff,'(1x,a,i5,a)') + x 'Instable pivot(s), correcting',(mn-l+1),' pivot position(s)' + call mprnt(buff) +c + do i=1,k + pivots(i)=invprm(i) + enddo + pivotn=k + do i=l,mn + pivotn=pivotn+1 + pivots(pivotn)=invprm(i) + enddo +c +c Reorder the matrix +c + do 10 i=1,mn + invprm(i)=0 + snhead(i)=0 + mark(i)=0 + nodtyp(i)=mn+1 + next(i)=0 + prew(i)=0 + list(i)=0 + 10 continue + do i=1,pivotn + nodtyp(pivots(i))=i + enddo + do ii=1,pivotn + i=pivots(ii) + if(i.le.n)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + k=pnt2-pnt1+1 + if(k.gt.0)then + do j=pnt1,pnt2 + workr(rowidx(j))=cnonz(j) + enddo + call hpsrt(k,mn,rowidx(pnt1),nodtyp) + do j=pnt1,pnt2 + cnonz(j)=workr(rowidx(j)) + enddo + endif + ecolpnt(i)=pnt1 + 15 if((pnt1.le.pnt2).and.(vcstat(rowidx(pnt2)).le.-2))then + pnt2=pnt2-1 + goto 15 + endif + count(i)=pnt2 + if(pnt1.le.pnt2)then + j=rowidx(pnt1) + o=list(j) + next(i)=o + list(j)=i + if(o.ne.0)prew(o)=i + prew(i)=0 + endif + endif + enddo +c + do 50 ii=1,pivotn + i=pivots(ii) + mark(i)=1 + if(i.le.n)then +c +c Remove i from the secondary list +c + if(ecolpnt(i).le.count(i))then + k=next(i) + l=prew(i) + if(k.gt.0)then + prew(k)=l + endif + if(l.gt.0)then + next(l)=k + else + list(rowidx(ecolpnt(i)))=k + endif + endif +c +c Simple column of A +c + if(invprm(i).eq.0)then + l=ecolpnt(i) + k=count(i)-l+1 + goto 72 + endif +c +c Transformed column of A +c + pnt1=ecolpnt(i) + pnt2=count(i) + l=fnz + ecolpnt(i)=fnz + if(fnz.ge.cfree-mn)then + write(buff,'(1x,a)')'Not enough memory' + call mprnt(buff) + code=-1 + goto 999 + endif + do j=pnt1,pnt2 + mark(rowidx(j))=1 + rowidx(fnz)=rowidx(j) + fnz=fnz+1 + enddo + goto 59 + endif +c +c Create nonzero pattern +c + l=fnz + ecolpnt(i)=fnz + if(fnz.ge.cfree-mn)then + write(buff,'(1x,a)')'Not enough memory' + call mprnt(buff) + code=-2 + goto 999 + endif + kprew=list(i) + 25 if(kprew.eq.0)goto 59 + k=next(kprew) + mark(kprew)=1 + rowidx(fnz)=kprew + fnz=fnz+1 + pnt1=ecolpnt(kprew)+1 + pnt2=count(kprew) + ecolpnt(kprew)=pnt1 + if(pnt1.le.pnt2)then + j=rowidx(pnt1) + o=list(j) + next(kprew)=o + list(j)=kprew + if(o.ne.0)prew(o)=kprew + prew(kprew)=0 + endif + kprew=k + goto 25 +c +c Build new column structure +c + 59 kprew=invprm(i) + 60 if(kprew.eq.0)goto 70 + pnt1=ecolpnt(kprew) + pnt2=count(kprew) + do j=pnt1,pnt2 + k=rowidx(j) + if(mark(k).eq.0)then + mark(k)=1 + rowidx(fnz)=k + fnz=fnz+1 + endif + enddo + kprew=snhead(kprew) + goto 60 +c +c Linking invperms, free working arrays +c + 70 do j=l,fnz-1 + mark(rowidx(j))=0 + enddo + count(i)=fnz-1 + k=fnz-l + if(k.gt.1)call hpsrt(k,mn,rowidx(l),nodtyp) + 72 if(k.gt.0)then + j=rowidx(l) + snhead(i)=invprm(j) + invprm(j)=i + endif + 50 continue +c +c End of creation of nonzero pattern, set up new supernode partitions +c + k=loglog + loglog=0 + call supnode(ecolpnt,count,rowidx,vcstat,pivots,snhead, + x invprm,nodtyp) + loglog=k + 999 return + end +c +c ========================================================================= +c super dense oszlopok 'multiply' kezelessel +c +c =========================================================================== +c + subroutine ffactor(pntc,crow,colpnt,rowidx, + x mark,pivcols,ccol,nonz,diag, + x cpermf,cpermb,rpermf,rpermb,pntr,cfill,rfill, + x cpnt,cnext,cprew,rindex,workr, + x fixn,dropn,fnzmax,fnzmin,active,oper,actual,slktyp,code) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/factor/ tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens + real*8 tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c + integer*4 rowidx(cfree),rindex(rfree),colpnt(n1), + x pivcols(mn),cpermf(mn),cpermb(mn),rpermf(mn),rpermb(mn), + x ccol(mn),crow(mn),pntc(mn),pntr(mn),mark(mn),cfill(mn), + x cpnt(mn),cnext(mn),cprew(mn),slktyp(m),rfill(mn),fixn, + x dropn,fnzmax,fnzmin,active,col,dcols,code + real*8 nonz(cfree),diag(mn),workr(mn),actual(mn),oper + character*99 buff +c +c --------------------------------------------------------------------------- +c +c cpermf oszloplista elore lancolasa, fejmutato cfirst +c cpermb oszloplista hatra lancolasa, fejmutato clast +c rpermf sorlista elore lancolase, fejmutato rfirst +c rpermb sorlista hatra lancolasa, fejmutato rlast +c ccol oszlopszamlalok +c crow sorszamlalok (vcstat) +c pntc oszlopmutatok +c pntr sormutatok +c mark eliminacios integer segedtomb +c workr eliminacios real segedtomb +c cfill a sorfolytonos tarolas update-elesehez segedtomb +c rfill a sorfolytonos tarolas update-elesehez segedtomb +c cpnt szamlalok szerinti listak fejmutatoja +c cnext szamlalok szerinti elore-lancolt lista +c cprew szamlalok szerinti hatra-lancolt lista +c +c -------------------------------------------------------------------------- + integer*4 pnt,pnt1,pnt2,i,j,k,l,o,p,endmem,ccfree,rcfree,pmode, + x rfirst,rlast,cfirst,clast,pcol,pcnt,ppnt1,ppnt2,fill, + x prewcol,ii,pass,minm,w1,wignore,method + real*8 pivot,ss,tltmp1,tltmp2 +C CMSSW: Temporary integer array needed to avoid reusing REAL*8 for +C integer storage + integer*4 inds(mn) +c--------------------------------------------------------------------------- +c + 1 format(' NOT ENOUGH MEMORY IN THE ROW FILE ') + 2 format(' NOT ENOUGH MEMORY IN THE COLUMN FILE ') + 3 format(' ROW REALAXED :',i6,' DIAG :',d12.6,' TYPE :',i3) + 4 format(' COLUMN DROPPED :',i6,' DIAG :',d12.6) + 6 format(' NONZEROS :',i12) + 7 format(' OPERATIONS :',f13.0) + 8 format(' Superdense cols. :',i12) +C CMSSW: Explicit initialization needed + tltmp1=0 + tltmp2=0 +c +c move elements in the dropped rows to the end of the columns +c + code=0 + if((order.gt.2.5).and.(order.lt.3.5))then + method=1 + write(buff,'(a)')' Minimum Local Fill-In Heuristic' + else + method=0 + write(buff,'(a)')' Minimum Degree Heuristic' + endif + call mprnt(buff) + wignore=10 + w1=0 + pass=2 + minm=-m-1 + if(dropn.gt.0)then + do 15 i=1,n + if(crow(i).le.-2)goto 15 + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + p=pnt2 + do 16 j=pnt2,pnt1,-1 + if(crow(rowidx(j)).gt.-2)goto 16 + o=rowidx(j) + pivot=nonz(j) + rowidx(j)=rowidx(p) + rowidx(p)=o + nonz(j)=nonz(p) + nonz(p)=pivot + p=p-1 + 16 continue + 15 continue + endif +c +c initialization +c + endmem=cfree + pivotn=0 + pnt=nz+1 + cfirst=0 + clast =0 + pmode =0 + do 11 i=1,mn + pivcols(i)=0 + ccol(i)=0 + if(crow(i).gt.-2)then + crow(i)=0 + else + if(minm.ge.crow(i))minm=crow(i)-1 + endif + mark(i)=0 + 11 continue +c +c set up the permut lists and compute crow +c + dcols=0 + do 10 i=1,mn + if(crow(i).le.-2)goto 10 + if(i.le.n)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + o=0 + do while((pnt1+o.le.pnt2).and.(crow(rowidx(pnt1+o)).gt.-2)) + o=o+1 + enddo + if(o.ge.supdens)then + pass=1 + crow(i)=minm + dcols=dcols+1 + goto 10 + endif + pnt2=pnt1+o-1 + do j=pnt1,pnt2 + crow(rowidx(j))=crow(rowidx(j))+1 + enddo + pntc(i)=pnt1 + ccol(i)=o + else + pntc(i)=pnt + ccol(i)=0 + pnt=pnt+1 + endif + if(cfirst.eq.0)then + cfirst=i + else + cpermf(clast)=i + endif + cpermb(i)=clast + clast=i + 10 continue + cpermf(clast)=0 + ccfree=cfree-pnt + if(ccfree.lt.mn)then + write(buff,2) + call mprnt(buff) + code=-2 + goto 999 + endif + write(buff,8)dcols + call mprnt(buff) + if(pass.eq.1)then + tltmp1=tpiv2 + tltmp2=tabs + tabs=tpiv2 + endif +c +c create pointers to rindex +c + 500 do i=1,mn + cpnt(i) =0 + cnext(i)=0 + cprew(i)=0 + workr(i)=0.0d+0 + enddo + pnt=1 + i=cfirst + rfirst=0 + rlast=0 + 25 if(i.gt.0)then + if(rfirst.eq.0)then + rfirst=i + else + rpermf(rlast)=i + endif + rpermb(i)=rlast + rlast=i + pntr(i)=pnt + rfill(i)=pnt + pnt=pnt+crow(i) +c +c initialize the counter lists +c + j=crow(i)+ccol(i)+1 + if(j.gt.0)then + o=cpnt(j) + cnext(i)=o + cpnt(j)=i + if(o.ne.0)cprew(o)=i + endif + cprew(i)=0 + i=cpermf(i) + goto 25 + endif + rcfree=rfree-pnt + if(rcfree.lt.mn)then + write(buff,1) + call mprnt(buff) + code=-2 + goto 999 + endif +c +c create the row file : symbolical transps the matrix +c + i=cfirst + 26 if(i.gt.0)then + pnt1=pntc(i) + pnt2=pnt1+ccol(i)-1 + do 27 j=pnt1,pnt2 + k=rowidx(j) + if(crow(k).le.-2)goto 27 + rindex(rfill(k))=i + rfill(k)=rfill(k)+1 + 27 continue + i=cpermf(i) + goto 26 + endif + rpermf(rlast)=0 + pcol=0 +c +c loop for pivots +c + 50 call fndpiv(cpnt,cnext,pntc,ccol,crow,rowidx,nonz, +C CMSSW: Prevent REAL*8 reusage warning +C Was: diag,pcol,pivot,pmode,method,workr,mark,rindex,pntr + x diag,pcol,pivot,pmode,method,inds,mark,rindex,pntr) + if (pcol.eq.0)goto 900 + pivot=1.0d+0/pivot + diag(pcol)=pivot + ccfree=endmem-pntc(clast)-ccol(clast) +c +c compress column file +c + if(ccfree.lt.mn)then + call ccomprs(mn,cfree,ccfree,endmem,nz, + x pntc,ccol,cfirst,cpermf,rowidx,nonz,code) + if(code.lt.0)goto 999 + endif +c +c remove pcol from the cpermf lists +c + prewcol=cpermb(pcol) + o=cpermf(pcol) + if(prewcol.ne.0)then + cpermf(prewcol)=o + else + cfirst=o + endif + if(o.eq.0)then + clast=prewcol + else + cpermb(o)=prewcol + endif +c +c remove pcol from the rpermf lists +c + prewcol=rpermb(pcol) + o=rpermf(pcol) + if(prewcol.ne.0)then + rpermf(prewcol)=o + else + rfirst=o + endif + if(o.eq.0)then + rlast=prewcol + else + rpermb(o)=prewcol + endif +c +c administration +c + pivotn=pivotn+1 + pivcols(pivotn)=pcol + pcnt=ccol(pcol)+crow(pcol) +c +c remove pcol from the counter lists +c + o=cnext(pcol) + ii=cprew(pcol) + if(ii.eq.0)then + cpnt(pcnt+1)=o + else + cnext(ii)=o + endif + if(o.ne.0)cprew(o)=ii + pnt1=pntc(pcol) + pnt2=pnt1+ccol(pcol)-1 + if(pnt1.gt.nz)then + ppnt1=endmem-pcnt + ppnt2=ppnt1+pcnt-1 + endmem=endmem-pcnt + ccfree=ccfree-pcnt + pnt=ppnt1 + do 60 j=pnt1,pnt2 + o=rowidx(j) + mark(o)=1 + workr(o)=nonz(j) + rowidx(pnt)=o + pnt=pnt+1 +c +c remove pcol from the row file +c + rfill(o)=-1 + cfill(o)=ccol(o) + l=pntr(o) + p=l+crow(o)-2 + do 55 k=l,p + if(rindex(k).eq.pcol)then + rindex(k)=rindex(p+1) + goto 60 + endif + 55 continue + 60 continue + pntc(pcol)=ppnt1 +c +c create pivot column from the row file +c + pnt1=pntr(pcol) + pnt2=pnt1+crow(pcol)-1 + do 70 i=pnt1,pnt2 + o=rindex(i) + l=pntc(o) + p=l+ccol(o)-1 +c +c move the original column +c + if(l.le.nz)then + if(ccfree.lt.mn)then + call ccomprs(mn,cfree,ccfree,endmem,nz, + x pntc,ccol,cfirst,cpermf,rowidx,nonz,code) + if(code.lt.0)goto 999 + l=pntc(o) + p=l+ccol(o)-1 + endif + ccfree=ccfree-ccol(o) + j=pntc(clast)+ccol(clast) + if(j.le.nz)j=nz+1 + pntc(o)=j + do 72 k=l,p + nonz(j)=nonz(k) + rowidx(j)=rowidx(k) + j=j+1 + 72 continue + l=pntc(o) + p=j-1 +c +c update the cpermf lists +c + prewcol=cpermb(o) + k=cpermf(o) + if(prewcol.ne.0)then + cpermf(prewcol)=k + else + if(k.ne.0)then + cfirst=k + else + goto 93 + endif + endif + if(k.eq.0)then + clast=prewcol + else + cpermb(k)=prewcol + endif + cpermf(clast)=o + cpermb(o)=clast + cpermf(o)=0 + clast=o + 93 endif +c +c find element and move in the column o +c + cfill(o)=ccol(o)-1 + rfill(o)= 0 + do 75 k=l,p + if(rowidx(k).eq.pcol)then + mark(o)=1 + rowidx(pnt)=o + pnt=pnt+1 + workr(o)=nonz(k) + rowidx(k)=rowidx(p) + nonz(k)=nonz(p) + goto 70 + endif + 75 continue + 70 continue + else + ppnt1=pnt1 + ppnt2=pnt2 + do 65 j=pnt1,pnt2 + o=rowidx(j) + mark(o)=1 + workr(o)=nonz(j) +c +c remove pcol from the row file +c + rfill(o)=-1 + cfill(o)=ccol(o) + l=pntr(o) + p=l+crow(o)-2 + do 67 k=l,p + if(rindex(k).eq.pcol)then + rindex(k)=rindex(p+1) + goto 65 + endif + 67 continue + 65 continue + endif + ccol(pcol)=pcnt +c +c remove columns from the counter lists +c + do 77 j=ppnt1,ppnt2 + i=rowidx(j) + o=cnext(i) + ii=cprew(i) + if(ii.eq.0)then + cpnt(crow(i)+ccol(i)+1)=o + else + cnext(ii)=o + endif + if(o.ne.0)cprew(o)=ii + 77 continue +c +c Sort pivot column, set-up workr +c + if(ppnt1.lt.ppnt2)call hpsort((ppnt2-ppnt1+1),rowidx(ppnt1)) + do p=ppnt1,ppnt2 + nonz(p)=workr(rowidx(p)) + workr(rowidx(p))=workr(rowidx(p))*pivot + enddo +c +c elimination loop +c + do 80 p=ppnt1,ppnt2 + i=rowidx(p) + ss=nonz(p) +c +c transforme diag and delete element from mark +c + diag(i)=diag(i)-ss*workr(i) + mark(i)=0 + pcnt=pcnt-1 +c +c transformation on the column i +c + fill=pcnt + pnt1=pntc(i) + pnt2=pnt1+cfill(i)-1 + do 90 k=pnt1,pnt2 + o=rowidx(k) + if(mark(o).ne.0)then + nonz(k)=nonz(k)-ss*workr(o) + fill=fill-1 + mark(o)=0 + endif + 90 continue +c +c compute the free space +c + ii=cpermf(i) + if(ii.eq.0)then + k=endmem-pnt2-1 + else + k=pntc(ii)-pnt2-1 + endif +c +c move column to the end of the column file +c + if(fill.gt.k)then + if (ccfree.lt.mn)then + call ccomprs(mn,cfree,ccfree,endmem,nz, + x pntc,ccol,cfirst,cpermf,rowidx,nonz,code) + if(code.lt.0)goto 999 + pnt1=pntc(i) + pnt2=pnt1+cfill(i)-1 + endif + if(i.ne.clast)then + l=pntc(clast)+ccol(clast) + pntc(i)=l + do 95 k=pnt1,pnt2 + rowidx(l)=rowidx(k) + nonz(l)=nonz(k) + l=l+1 + 95 continue + pnt1=pntc(i) + pnt2=l-1 + prewcol=cpermb(i) + if(prewcol.eq.0)then + cfirst=ii + else + cpermf(prewcol)=ii + endif + cpermb(ii)=prewcol + cpermf(clast)=i + cpermb(i)=clast + clast=i + cpermf(clast)=0 + endif + endif +c +c create fill in +c + do 97 k=p+1,ppnt2 + o=rowidx(k) + if(mark(o).eq.0)then + mark(o)=1 + else + pnt2=pnt2+1 + nonz(pnt2)=-ss*workr(o) + rowidx(pnt2)=o + rfill(o)=rfill(o)+1 + endif + 97 continue + pnt2=pnt2+1 + ccol(i)=pnt2-pnt1 + if(i.eq.clast)then + ccfree=endmem-pnt2-1 + endif + 80 continue +c +c make space for fills in the row file +c + do 100 j=ppnt1,ppnt2 + i=rowidx(j) +c +c update the counter lists +c + fill=ccol(i)+crow(i)+rfill(i)+1 + o=cpnt(fill) + cnext(i)=o + cpnt(fill)=i + if(o.ne.0)cprew(o)=i + cprew(i)=0 + pnt2=pntr(i)+crow(i)-1 +c +c compute the free space +c + ii=rpermf(i) + if(ii.eq.0)then + k=rfree-pnt2-1 + else + k=pntr(ii)-pnt2-1 + endif +c +c move row to the end of the row file +c + if(k.lt.rfill(i))then + if(rcfree.lt.mn)then + call rcomprs(mn,rfree, + x rcfree,pntr,crow,rfirst,rpermf,rindex,code) + if(code.lt.0)goto 999 + endif + if(ii.ne.0)then + pnt1=pntr(i) + pnt2=pnt1+crow(i)-1 + pnt=pntr(rlast)+crow(rlast) + pntr(i)=pnt + do 110 l=pnt1,pnt2 + rindex(pnt)=rindex(l) + pnt=pnt+1 + 110 continue +c +c update the rperm lists +c + prewcol=rpermb(i) + if(prewcol.eq.0)then + rfirst=ii + else + rpermf(prewcol)=ii + endif + rpermb(ii)=prewcol + rpermf(rlast)=i + rpermb(i)=rlast + rlast=i + rpermf(rlast)=0 + endif + endif + crow(i)=crow(i)+rfill(i) + if(i.eq.rlast)rcfree=rfree-crow(i)-pntr(i) + 100 continue +c +c make pointers to the end of the filled rows +c + do 120 j=ppnt1,ppnt2 + rfill(rowidx(j))=pntr(rowidx(j))+crow(rowidx(j))-1 + 120 continue +c +c generate fill in the row file +c + do 130 j=ppnt1,ppnt2 + o=rowidx(j) + pnt1=pntc(o)+cfill(o) + pnt2=pntc(o)+ccol(o)-1 + do 140 k=pnt1,pnt2 + rindex(rfill(rowidx(k)))=o + rfill(rowidx(k))=rfill(rowidx(k))-1 + 140 continue + 130 continue +c +c end of the pivot loop +c + goto 50 +c +c compute the 'superdense' columns, enter in pass=2 +c + 900 if(pass.eq.1)then + pass=pass+1 + tpiv2=tltmp1 + tabs=tltmp2 + pmode=1 + call ccomprs(mn,cfree,ccfree,endmem,nz, + x pntc,ccol,cfirst,cpermf,rowidx,nonz,code) + if(code.lt.0)goto 999 + call excols(rowidx,nonz,rpermf,rpermb,crow, + x pntc,ccol,pivcols,cpermf,cpermb,workr,colpnt,diag, + x cfirst,clast,endmem,ccfree,minm,code) + if(code.lt.0)goto 999 + goto 500 + endif +c +c rank check +c + if(pivotn.lt.mn-fixn-dropn)then + i=cfirst + 910 if (i.gt.0)then + crow(i)=-2 + if(i.le.n)then + w1=w1+1 + if(w1.le.wignore)then + write(buff,4)i,diag(i) + call mprnt(buff) + endif + fixn=fixn+1 + else + w1=w1+1 + if(w1.le.wignore)then + write(buff,3)(i-n),diag(i),slktyp(i-n) + call mprnt(buff) + endif + actual(i)=-1 + dropn=dropn+1 + endif + i=cpermf(i) + goto 910 + endif + active=mn-pivotn + w1=w1-wignore + if(w1.gt.0)then + write(buff,'(1x,a,i5)')'Warnings ignored:',w1 + call mprnt(buff) + endif + endif +c +c repermut +c + do 955 i=1,mn + mark(i)=mn+1 + pntr(i)=0 + 955 continue + do 915 i=1,pivotn + mark(pivcols(i))=i + 915 continue + fill=0 + oper=0.0d+0 + do 920 i=1,mn + if(crow(i).le.-2)goto 920 + pnt1=pntc(i) + if(pnt1.le.nz)goto 920 + if(ccol(i).gt.0)then + pnt2=pnt1+ccol(i)-1 + do j=pnt1,pnt2 + workr(rowidx(j))=nonz(j) + enddo + call hpsrt(ccol(i),mn,rowidx(pnt1),mark) + do j=pnt1,pnt2 + nonz(j)=workr(rowidx(j)) + enddo + endif + fill=fill+ccol(i) + oper=oper+dble(ccol(i)*ccol(i)+ccol(i))/2.0d+0 + 920 continue + do 950 i=1,n + if(crow(i).le.-2)goto 950 + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + k=pnt2-pnt1+1 + if(k.gt.0)then + do j=pnt1,pnt2 + workr(rowidx(j))=nonz(j) + enddo + call hpsrt(k,mn,rowidx(pnt1),mark) + do j=pnt1,pnt2 + nonz(j)=workr(rowidx(j)) + enddo + endif + if(pntc(i).lt.nz)then + ccol(i)=k + fill=fill+ccol(i) + oper=oper+dble(ccol(i)*ccol(i)+ccol(i))/2.0d+0 + endif + 950 continue +c +c create the counter inta1 for the minor iterations +c + do 960 i=1,pivotn + col=pivcols(pivotn-i+1) + if(ccol(col).eq.0)goto 960 + pntr(col)=pntr(rowidx(pntc(col)))+ccol(col) + 960 continue +c +c modify ccol ( counter ->> pointer ) +c + do 970 i=1,pivotn + col=pivcols(i) + ccol(col)=pntc(col)+ccol(col)-1 + 970 continue +c +c end of ffactor +c + if(fnzmin.gt.fill)fnzmin=fill + if(fnzmax.lt.fill)fnzmax=fill + write(buff,6)fill + call mprnt(buff) + write(buff,7)oper + call mprnt(buff) + if(method.eq.1)tfind=-tfind + 999 return + end +c +c =========================================================================== +c + subroutine ccomprs(mn,cfree,ccfree,endmem,nz, + x pnt,count,cfirst,cpermf,rowidx,nonz,code) + integer*4 mn,cfree,ccfree,endmem,nz,pnt(mn),rowidx(cfree), + x count(mn),cpermf(mn),cfirst,code + real*8 nonz(cfree) +c + integer*4 i,j,pnt1,pnt2,pnt0 + character*99 buff +c --------------------------------------------------------------------------- + 2 format(' NOT ENOUGH MEMORY DETECTED IN SUBROUTINE CCOMPRESS') + pnt0=nz+1 + i=cfirst + 40 if(i.le.0)goto 30 + pnt1=pnt(i) + if(pnt1.lt.pnt0)goto 10 + if(pnt1.eq.pnt0)then + pnt0=pnt0+count(i) + goto 10 + endif + pnt(i)=pnt0 + pnt2=pnt1+count(i)-1 + do 20 j=pnt1,pnt2 + rowidx(pnt0)=rowidx(j) + nonz(pnt0)=nonz(j) + pnt0=pnt0+1 + 20 continue + 10 i=cpermf(i) + goto 40 + 30 ccfree=endmem-pnt0-1 + if(ccfree.lt.mn)then + write(buff,2) + call mprnt(buff) + code=-2 + endif + return + end +c +c =========================================================================== +c + subroutine rcomprs(mn,rfree,rcfree,pnt,count,rfirst, + x rpermf,rindex,code) + integer*4 mn,rfree,rcfree,pnt(mn),count(mn),rfirst,rpermf(mn), + x rindex(rfree),code +c + integer*4 i,j,ppnt,pnt1,pnt2 + character*99 buff +c +c --------------------------------------------------------------------------- +c + 2 format(' NOT ENOUGH MEMORY DETECTED IN SUBROUTINE RCOMPRESS') + ppnt=1 + i=rfirst + 5 if(i.eq.0)goto 20 + pnt1=pnt(i) + if(ppnt.eq.pnt1)then + ppnt=ppnt+count(i) + goto 15 + endif + pnt2=pnt1+count(i)-1 + pnt(i)=ppnt + do 10 j=pnt1,pnt2 + rindex(ppnt)=rindex(j) + ppnt=ppnt+1 + 10 continue + 15 i=rpermf(i) + goto 5 + 20 rcfree=rfree-ppnt + if(rcfree.lt.mn)then + write(buff,2) + call mprnt(buff) + code=-2 + endif + return + end +c +c ========================================================================== +c + subroutine excols(rowidx,nonz,rpermf,rpermb,crow, + x pntc,ccol,pivcols,cpermf,cpermb,workr,colpnt,diag, + x cfirst,clast,endmem,ccfree,minm,code) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 rowidx(cfree),rpermf(mn),rpermb(mn),crow(mn), + x pntc(mn),ccol(mn),pivcols(mn),cpermf(mn),cpermb(mn),colpnt(n1), + x cfirst,clast,endmem,ccfree,minm,code + real*8 nonz(cfree),workr(mn),diag(mn) +c + integer*4 i,j,k,l,o,prewcol,pnt1,pnt2,ppnt1,ppnt2 + real*8 ss + character*99 buff +c +c ---------------------------------------------------------------------------- +c + 2 format(' NOT ENOUGH MEMORY IN THE COLUMN FILE ') +c + do i=1,mn + rpermf(i)=0 + rpermb(i)=0 + if(crow(i).gt.-2)crow(i)=0 + enddo + do i=1,pivotn + crow(pivcols(i))=-1 + enddo + prewcol=0 + do 200 i=1,n + if(crow(i).ne.minm)goto 200 + if(prewcol.eq.0)prewcol=i + ppnt1=colpnt(i) + ppnt2=colpnt(i+1)-1 +c +c update column's permut list +c + if(clast.ne.0)then + pnt1=pntc(clast)+ccol(clast) + cpermf(clast)=i + else + cfirst=i + pnt1=0 + endif + cpermb(i)=clast + cpermf(i)=0 + clast=i + if(pnt1.lt.nz)pnt1=nz+1 + pntc(i)=pnt1 + pnt2=pnt1 +c +c repack the original column +c + do 202 j=ppnt1,ppnt2 + k=rowidx(j) + if(crow(k).gt.-2)then + workr(k)=nonz(j) + rpermf(k)=1 + if(crow(k).eq.-1)then + rpermb(k)=rpermb(k)+1 + endif + rowidx(pnt2)=k + pnt2=pnt2+1 + endif + 202 continue +c +c Ftran on the column +c + do j=1,pivotn + o=pivcols(j) + if(rpermf(o).gt.0)then + ppnt1=pntc(o) + ppnt2=ppnt1+ccol(o)-1 + ss=-workr(o)*diag(o) + diag(i)=diag(i)+ss*workr(o) + do k=ppnt1,ppnt2 + l=rowidx(k) + if(rpermf(l).eq.0)then + workr(l)=nonz(k)*ss + rowidx(pnt2)=l + pnt2=pnt2+1 + rpermf(l)=1 + if((crow(l).eq.-1).or.(l.lt.i))then + rpermb(l)=rpermb(l)+1 + endif + else + workr(l)=workr(l)+nonz(k)*ss + endif + enddo + endif + enddo +c +c augftr with the prewious columns +c + j=prewcol + 215 if(j.ne.i)then + ppnt1=pntc(j) + ppnt2=ppnt1+ccol(j)-1 + do k=ppnt1,ppnt2 + l=rowidx(k) + if((crow(l).eq.-1).and.(rpermf(l).gt.0))then + if(rpermf(j).eq.0)then + workr(j)=-workr(l)*nonz(k)*diag(l) + rowidx(pnt2)=j + pnt2=pnt2+1 + rpermf(j)=1 + rpermb(j)=rpermb(j)+1 + else + workr(j)=workr(j)-workr(l)*nonz(k)*diag(l) + endif + endif + enddo + j=cpermf(j) + goto 215 + endif + ccol(i)=pnt2-pnt1 +c +c pack the column +c + pnt2=pnt2-1 + do j=pnt1,pnt2 + o=rowidx(j) + nonz(j)=workr(o) + rpermf(o)=0 + enddo + ccfree=endmem-pntc(clast)-ccol(clast) + if(ccfree.lt.mn)then + write(buff,2) + call mprnt(buff) + code=-2 + goto 999 + endif + crow(i)=0 + 200 continue +c +c Make space in the old factors +c + o=0 + do i=1,pivotn + j=pivcols(i) + o=o+rpermb(j) + enddo + ppnt1=endmem-o + if(ccfree.le.o)then + write(buff,2) + call mprnt(buff) + code=-2 + goto 999 + endif + endmem=ppnt1 + ccfree=ccfree-o + do i=pivotn,1,-1 + k=pivcols(i) + pnt1=pntc(k) + if(pnt1.gt.nz)then + pnt2=pnt1+ccol(k)-1 + pntc(k)=ppnt1 + do j=pnt1,pnt2 + rowidx(ppnt1)=rowidx(j) + nonz(ppnt1)=nonz(j) + ppnt1=ppnt1+1 + enddo + ppnt1=ppnt1+rpermb(k) + endif + enddo +c +c make space in the active submatrix +c + o=0 + i=cfirst + 220 if(i.ne.0)then + o=o+rpermb(i) + i=cpermf(i) + goto 220 + endif + if(ccfree.le.o)then + write(buff,2) + call mprnt(buff) + code=-2 + goto 999 + endif + ccfree=ccfree-o + ppnt1=pntc(clast)+ccol(clast)+o + i=clast + 230 if(i.ne.0)then + pnt1=pntc(i) + if(pnt1.gt.nz)then + pnt2=pnt1+ccol(i)-1 + ppnt1=ppnt1-rpermb(i) + do j=pnt2,pnt1,-1 + rowidx(ppnt1)=rowidx(j) + nonz(ppnt1)=nonz(j) + ppnt1=ppnt1-1 + enddo + pntc(i)=ppnt1+1 + endif + i=cpermb(i) + goto 230 + endif +c +c Store the dense columns in the final positions +c + i=prewcol + 250 if(i.gt.0)then + pnt1=pntc(i) + pnt2=pnt1+ccol(i)-1 + ppnt1=pnt1 + do j=pnt1,pnt2 + o=rowidx(j) + if((crow(o).eq.-1).or.(o.lt.i))then + k=pntc(o)+ccol(o) + nonz(k)=nonz(j) + rowidx(k)=i + ccol(o)=ccol(o)+1 + else + nonz(ppnt1)=nonz(j) + rowidx(ppnt1)=rowidx(j) + ppnt1=ppnt1+1 + endif + enddo + ccol(i)=ppnt1-pnt1 + i=cpermf(i) + goto 250 + endif +c +c compute crow +c + do i=1,mn + if(crow(i).gt.-2)crow(i)=0 + enddo + i=cfirst + 280 if(i.gt.0)then + pnt1=pntc(i) + pnt2=pnt1+ccol(i)-1 + do j=pnt1,pnt2 + crow(rowidx(j))=crow(rowidx(j))+1 + enddo + i=cpermf(i) + goto 280 + endif +999 return + end +c +c ============================================================================= +c Find pivot in the augmented system +c Prefer the pivot for expanding the supernodes +c Method=0 minimum count +c Method=1 minimum local fill in +c =========================================================================== +c + subroutine fndpiv(cpnt,cnext,pntc,ccol,crow,rowidx,nonzeros, + x diag,pivcol,pivot,md,method,inds,mark,rindex,pntr) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + common/factor/ tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens + real*8 tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens +c + integer*4 cpnt(mn),cnext(mn),pntc(mn),ccol(mn),crow(mn),pivcol, + x rowidx(cfree),md,method,inds(mn),mark(mn),rindex(rfree), + x pntr(mn) + real*8 nonzeros(cfree),diag(mn),pivot + +c -------------------------------------------------------------------------- + integer*4 j,k,l,o,nnz,ffind,oldpcol,oldlen,p1,p2,srcmod + integer*4 fill,mfill,q,oo,kk + real*8 sol,stab,stab1,d,toler,ss +c -------------------------------------------------------------------------- +C CMSSW: Explicit initialization needed + p1=0 + p2=0 + oldlen=0 + fill=0 + stab=0 + stab1=0 +c +c find pivot in sparse columns +c + mfill=-1 + toler=tpiv1 + if(md.gt.0)then + srcmod=1 + goto 101 + endif + 10 pivcol=pivcol+1 + if (pivcol.ge.n)goto 100 + if(crow(pivcol).ne.0)goto 10 + if(ccol(pivcol).gt.lam)goto 10 + pivot=diag(pivcol) + if(abs(pivot).lt.tpiv2)goto 10 + goto 200 +c +c find pivot in the another columns +c + 100 md=1 + srcmod=0 + 101 oldpcol=pivcol + pivcol=0 + stab1=0 + pivot=0 + nnz=md-1 + ffind=0 + if(nnz.lt.1)nnz=1 + md=md-1 + if(md.le.1)md=1 +c +c Find supernodal pivot (srcmode=1) +c + 115 if(oldpcol.eq.0)goto 112 + p1=pntc(oldpcol) + p2=p1+ccol(oldpcol)-1 + oldlen=ccol(oldpcol) + 125 if(p1.gt.p2)goto 114 + j=rowidx(p1) + if((crow(j)+ccol(j)).lt.oldlen)goto 121 + 145 p1=p1+1 + goto 125 + 114 if(pivcol.gt.0)goto 200 +c +c Find another pivot +c + 112 srcmod=0 + md=0 + 110 j=cpnt(nnz) + if((j.gt.0).and.(md.eq.0))md=nnz + 120 if(j.le.0)goto 150 +c +c Compute fill in +c + if(method.ne.0)then + q=0 + k=pntc(j) + l=k+ccol(j)-1 + do o=k,l + q=q+1 + inds(q)=rowidx(o) + mark(rowidx(o))=1 + enddo + k=pntr(j) + l=k+crow(j)-1 + do o=k,l + q=q+1 + inds(q)=rindex(o) + mark(rindex(o))=1 + enddo + fill=(q*(q-1))/2 + do kk=1,q + o=inds(kk) + k=pntc(o) + l=k+ccol(o)-1 + do oo=k,l + fill=fill-mark(rowidx(oo)) + enddo + enddo + do o=1,q + mark(inds(o))=0 + enddo + else + fill=crow(j) + endif + ffind=ffind+1 + if((mfill.ge.0).and.(fill.ge.mfill))goto 130 + 121 d=diag(j) + sol=abs(d) + if(sol.lt.tabs)goto 130 + k=pntc(j) +c +c stability test +c + stab=sol + l=k+ccol(j)-1 + do 32 o=k,l + ss=abs(nonzeros(o)) + if(stab.lt.ss)stab=ss + 32 continue + stab=sol/stab + if(stab.lt.toler)goto 130 + if(mfill.lt.0)mfill=fill+1 + if((fill.lt.mfill).or.((fill.eq.mfill).and.(stab.gt.stab1)))then + pivot=d + pivcol=j + stab1=stab + mfill=fill + goto 130 + endif + 130 if((srcmod.gt.0).and.(pivcol.ne.0))then +cccc md=md-1 +cccc if(md.lt.1)md=1 + goto 200 + endif + if((ffind.gt.tfind).and.(pivcol.ne.0))goto 200 + if(srcmod.gt.0)goto 145 + j=cnext(j) + goto 120 + 150 if((pivcol.eq.0).or.(method.ne.0))then + nnz=nnz+1 + if(nnz.le.mn)goto 110 + if(pivcol.gt.0)goto 200 + toler=toler/10 + nnz=md + if((toler.ge.tpiv2).and.(nnz.gt.0))goto 115 + md=1 + endif + 200 return + end +c +c ========================================================================== +c Supernodal left looking, primer supernode loop (cache), +c Supernode update with indirect addressing +c Relative pivot tolerance +c ============================================================================= +c + subroutine nfactor(ecolpnt, + x vcstat,rowidx,pivots,count, + x nonzeros,diag,err,updat,mut,index,dropn,slktyp, + x snhead,fpnt,invperm,nodtyp,dv,odiag) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 err,mut(mn),dropn,ecolpnt(mn),vcstat(mn), + x rowidx(cfree),pivots(mn),count(mn),index(mn),slktyp(m) + integer*4 snhead(mn),fpnt(mn),invperm(mn),nodtyp(mn) + real*8 nonzeros(cfree),diag(mn),updat(mn),dv(m),odiag(mn) +c + common/factor/ tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens + real*8 tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens + common/numer/ tplus,tzer + real*8 tplus,tzer +c ----------------------------------------------------------------------------- + integer*4 i,j,k,o,p,pnt1,pnt2,ppnt1,ppnt2,col,kprew, + x prewnode,ppnode,rb,w1 + real*8 s,diap,diam + character*99 buff +c------------------------------------------------------------------------------ +C CMSSW: Explicit initialization needed + ppnt1=0 + ppnt2=0 + + err=0 + w1=0 +c +c initialization +c + do 10 i=1,mn + mut(i)=0 + index(i)=0 + updat(i)=0.0 + fpnt(i)=ecolpnt(i) + 10 continue + ppnode=0 + prewnode=0 + i=0 +c +c loop for pivot columns +c + 100 i=i+1 + if(i.gt.pivotn)goto 60 + col=pivots(i) +c +c step vcstat if relaxed +c + if(vcstat(col).le.-2)then + call colremv(i,col,mut,index,fpnt,count,pivots,invperm, + x snhead,nodtyp,rowidx,nonzeros,ppnode,prewnode) + diag(col)=0.0 + i=i-1 + if((ppnode.gt.0).and.(prewnode.eq.i))goto 110 + goto 100 + endif +c + ppnt1=ecolpnt(col) + ppnt2=count(col) + if(ppnt1.le.nz)then + diag(col)=1.0d00/diag(col) + goto 180 + endif + kprew=index(col) +c +c compute +c + diap=diag(col) + diam=0.0d+0 + 130 if(kprew)129,150,131 +c +c Standard transformation +c + 131 k=mut(kprew) + pnt1=fpnt(kprew) + pnt2=count(kprew) + if(pnt1.lt.pnt2)then + o=rowidx(pnt1+1) + mut(kprew)=index(o) + index(o)=kprew + endif + pnt1=pnt1+1 + fpnt(kprew)=pnt1 + s=-nonzeros(pnt1-1)*diag(kprew) + if(kprew.le.n)then + diap=diap+s*nonzeros(pnt1-1) + else + diam=diam+s*nonzeros(pnt1-1) + endif + do 170 o=pnt1,pnt2 + updat(rowidx(o))=updat(rowidx(o))+s*nonzeros(o) + 170 continue + kprew=k + goto 130 +c +c supernodal transformation +c + 129 kprew=-kprew + k=mut(kprew) + p=invperm(kprew) + pnt1=fpnt(kprew)+1 + if(pnt1.le.count(kprew))then + o=rowidx(pnt1) + mut(kprew)=index(o) + index(o)=-kprew + endif + if(kprew.le.n)then + call cspnd(p,snhead(p),diag,nonzeros, + x fpnt,count,pivots,updat,diap,rowidx(pnt1)) + else + call cspnd(p,snhead(p),diag,nonzeros, + x fpnt,count,pivots,updat,diam,rowidx(pnt1)) + endif + kprew=k + goto 130 +c +c pack a column, and free the working array +c + 150 do k=ppnt1,ppnt2 + nonzeros(k)=updat(rowidx(k)) + updat(rowidx(k))=0 + enddo +c +c set up diag +c + if((ppnode.le.0).or.(prewnode.ne.snhead(i)))then + diap=diap+diam + diam=max(trabs,abs(diam*trabs)) + if(abs(diap).lt.diam)then + call rngchk(rowidx,nonzeros,ecolpnt(col),count(col), + x vcstat,rb,diag,slktyp,dropn,col,dv,diap,w1,odiag(col)) + if(rb.ne.0)err=1 + diag(col)=diap + if(vcstat(col).le.-2)goto 100 + else + diag(col)=1.0d00/diap + endif + else + diag(col)=diam + updat(col)=diap + endif +c +c Transformation in (primer) supernode +c + 110 if(prewnode.eq.i)then + if(ppnode.gt.0)then + do j=ppnode+1,i + o=j-1 + p=pivots(j) + call cspnode(ppnode,o,diag,nonzeros,fpnt,count,pivots, + x nonzeros(ecolpnt(p)),diag(p)) + diam=max(trabs,abs(diag(p)*trabs)) + diag(p)=diag(p)+updat(p) + if(abs(diag(p)).lt.diam)then + call rngchk(rowidx,nonzeros,ecolpnt(p),count(p), + x vcstat,rb,diag,slktyp,dropn,p,dv,diag(p),w1,odiag(p)) + if(rb.ne.0)err=1 + else + diag(p)=1.0d00/diag(p) + endif + enddo + endif + ppnode=0 + endif +c +c Update the linked list +c + 180 if(snhead(i).eq.0)then + ppnode=0 + if(ppnt1.le.ppnt2)then + j=rowidx(ppnt1) + mut(col)=index(j) + index(j)=col + endif + prewnode=0 + else + if(prewnode.ne.snhead(i))then + prewnode=snhead(i) + if(nodtyp(i).gt.0)then + ppnode=i + else + ppnode=-i + endif + if(ecolpnt(pivots(prewnode)).le.count(pivots(prewnode)))then + j=rowidx(ecolpnt(pivots(prewnode))) + mut(col)=index(j) + index(j)=-col + endif + endif + endif +c +c end of the main loop +c + goto 100 +c +c end of mfactor +c + 60 if(w1.gt.0)then + write(buff,'(1x,a,i6)')'Total warnings of row dependencies:',w1 + call mprnt(buff) + endif + return + end +c +c ============================================================================= +c + subroutine colremv(i,col,mut,index,fpnt,count,pivots,invperm, + x snhead,nodtyp,rowidx,nonzeros,ppnode,prewnode) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 i,col,mut(mn),index(mn),fpnt(mn),count(mn),pivots(mn), + x invperm(mn),snhead(mn),nodtyp(mn),rowidx(cfree),ppnode, + x prewnode + real*8 nonzeros(cfree) +c + integer*4 j,jj,k,l,o,p,pnt1 +c + jj=index(col) + 195 if(jj.eq.0)goto 103 + if(jj.lt.0)then + j=-jj + else + j=jj + endif + k=mut(j) + pnt1=fpnt(j) + call move(pnt1,count(j),rowidx,nonzeros) + if(pnt1.le.count(j))then + o=rowidx(pnt1) + mut(j)=index(o) + index(o)=jj + endif + if(jj.lt.0)then + p=invperm(j) + l=snhead(p) + do o=p+1,l + call move(fpnt(pivots(o)),count(pivots(o)),rowidx,nonzeros) + enddo + endif + jj=k + goto 195 +c +c Step in the primer supernode +c + 103 if((ppnode.gt.0).and.(prewnode.eq.snhead(i)))then + l=i-1 + do o=ppnode,l + pnt1=fpnt(pivots(o)) + 104 if(pnt1.le.count(pivots(o)))then + if(rowidx(pnt1).eq.col)then + call move(pnt1,count(pivots(o)),rowidx,nonzeros) + pnt1=count(pivots(o)) + endif + pnt1=pnt1+1 + goto 104 + endif + enddo + endif +c +c Make changes +c + pivotn=pivotn-1 + do j=i,pivotn + pivots(j)=pivots(j+1) + snhead(j)=snhead(j+1) + nodtyp(j)=nodtyp(j+1) + enddo + do j=1,pivotn + if(snhead(j).ge.i)snhead(j)=snhead(j)-1 + invperm(pivots(j))=j + enddo + if(prewnode.ge.i)prewnode=prewnode-1 + return + end +c +c ============================================================================= +c + subroutine move(pnt1,pnt2,rowidx,nonzeros) + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 pnt1,pnt2,rowidx(cfree),i,j + real*8 nonzeros(cfree),s + if(pnt1.le.pnt2)then + j=rowidx(pnt1) + s=nonzeros(pnt1) + pnt2=pnt2-1 + do i=pnt1,pnt2 + nonzeros(i)=nonzeros(i+1) + rowidx(i)=rowidx(i+1) + enddo + rowidx(pnt2+1)=j + nonzeros(pnt2+1)=s + endif + return + end +c +c ============================================================================= + +c Supernodal left looking, primer supernode loop (cache), +c Supernode update with indirect addressing +c Relative pivot tolerance +c ========================================================================== +c + subroutine mfactor(ecolpnt, + x vcstat,colpnt,rowidx,pivots,count,mut,nonzeros, + x diag,err,updat,list,index,dropn,slktyp, + x snhead,fpnt,invperm,nodtyp,dv,odiag) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 err,list(mn),mut(mn),dropn + integer*4 ecolpnt(mn),vcstat(mn),colpnt(n1),rowidx(cfree) + integer*4 pivots(mn),count(mn),index(mn),slktyp(m) + integer*4 snhead(mn),fpnt(mn),invperm(mn),nodtyp(mn) + real*8 nonzeros(cfree),diag(mn),updat(mn),dv(m),odiag(mn) +c + common/factor/ tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens + real*8 tpiv1,tpiv2,tabs,trabs,lam,tfind,order,supdens + common/numer/ tplus,tzer + real*8 tplus,tzer +c -------------------------------------------------------------------------- + integer*4 i,j,k,l,o,p,pnt1,pnt2,ppnt1,ppnt2,mk,col,kprew,rb, + x ppnode,prewnode,w1 + real*8 s,diap,diam + character*99 buff +c--------------------------------------------------------------------------- +C CMSSW: Explicit initialization needed + o=0 + + err=0 + w1=0 +c +c initialization +c + do 10 i=1,mn + list(i)=0 + index(i)=0 + updat(i)=0.0d+0 + fpnt(i)=0 + 10 continue +c +c initialize dll +c + do 15 i=1,n + if(vcstat(i).le.-2)goto 15 + k=ecolpnt(i) + if(k.le.nz)goto 15 + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + if(pnt1.le.pnt2)then + o=rowidx(pnt1) + fpnt(i)=index(o) + index(o)=i + list(i)=pnt1 + endif + 15 continue +c +c set the extra part of the matrix using a dll +c + do 20 col=1,pivotn + i=pivots(col) + pnt1=ecolpnt(i) + if(pnt1.le.nz)goto 20 + pnt2=count(i) + o=0 + if(i.le.n)then + if(vcstat(i).le.-2)goto 20 + ppnt1=list(i) + ppnt2=colpnt(i+1)-1 + do 18 j=ppnt1,ppnt2 + k=rowidx(j) + updat(k)=nonzeros(j) + o=o+1 + mut(o)=k + 18 continue + list(i)=ppnt2+1 + else + kprew=index(i) + if(kprew.eq.0)goto 25 + if(vcstat(i).le.-2)then + 21 mk=fpnt(kprew) + ppnt1=list(kprew)+1 + if(ppnt1.lt.colpnt(kprew+1))then + list(kprew)=ppnt1 + k=rowidx(ppnt1) + fpnt(kprew)=index(k) + index(k)=kprew + endif + kprew=mk + if(kprew.ne.0)goto 21 + else + 22 mk=fpnt(kprew) + ppnt1=list(kprew)+1 + if(ppnt1-colpnt(kprew+1))11,12,13 + 11 updat(kprew)=nonzeros(ppnt1-1) + list(kprew)=ppnt1 + k=rowidx(ppnt1) + fpnt(kprew)=index(k) + index(k)=kprew + o=o+1 + mut(o)=kprew + goto 13 + 12 updat(kprew)=nonzeros(ppnt1-1) + list(kprew)=ppnt1 + o=o+1 + mut(o)=kprew + 13 kprew=mk + if(kprew.ne.0)goto 22 + endif + endif +c +c set column i and delete updat +c + 25 do 23 j=pnt1,pnt2 + nonzeros(j)=updat(rowidx(j)) + 23 continue + do 26 j=1,o + updat(mut(j))=0 + 26 continue + 20 continue +c +c initialize for the computation +c + do 30 i=1,mn + mut(i)=0 + fpnt(i)=ecolpnt(i) + list(i)=0 + index(i)=0 + updat(i)=0.0 + 30 continue + ppnode=0 + prewnode=0 + i=0 +c +c loop for pivot columns +c + 100 i=i+1 + if(i.gt.pivotn)goto 60 + col=pivots(i) + ppnt1=ecolpnt(col) + ppnt2=count(col) +c +c step vcstat if relaxed +c + if(vcstat(col).le.-2)then + call colremv(i,col,mut,index,fpnt,count,pivots,invperm, + x snhead,nodtyp,rowidx,nonzeros,ppnode,prewnode) + do 75 j=ppnt1,ppnt2 + k=rowidx(j) + if((k.gt.n).or.(ecolpnt(k).le.nz))goto 75 + l=colpnt(k) + o=colpnt(k+1)-1 + do p=l,o + if(rowidx(p).eq.col)then + call move(p,o,rowidx,nonzeros) + goto 75 + endif + enddo + 75 continue + i=i-1 + if((ppnode.gt.0).and.(prewnode.eq.i))goto 110 + goto 100 + endif +c + if(ppnt1.le.nz)then + diag(col)=1.0d00/diag(col) + goto 180 + endif + kprew=index(col) +c +c repack a column +c + do k=ppnt1,ppnt2 + updat(rowidx(k))=nonzeros(k) + enddo + if(col.le.n)then + diam=diag(col) + diap=0.0d+0 + else + diap=diag(col) + diam=0.0d+0 + endif + 130 if(kprew)129,150,131 +c +c Standard transformation +c + 131 k=mut(kprew) + pnt1=fpnt(kprew) + pnt2=count(kprew) + if(pnt1.lt.pnt2)then + o=rowidx(pnt1+1) + mut(kprew)=index(o) + index(o)=kprew + endif + pnt1=pnt1+1 + fpnt(kprew)=pnt1 + s=-nonzeros(pnt1-1)*diag(kprew) + if(kprew.le.n)then + diap=diap+s*nonzeros(pnt1-1) + else + diam=diam+s*nonzeros(pnt1-1) + endif + do 170 o=pnt1,pnt2 + updat(rowidx(o))=updat(rowidx(o))+s*nonzeros(o) + 170 continue + kprew=k + goto 130 +c +c supernodal transformation +c + 129 kprew=-kprew + k=mut(kprew) + p=invperm(kprew) + pnt1=fpnt(kprew)+1 + if(pnt1.le.count(kprew))then + o=rowidx(pnt1) + mut(kprew)=index(o) + index(o)=-kprew + endif + if(kprew.le.n)then + call cspnd(p,snhead(p),diag,nonzeros, + x fpnt,count,pivots,updat,diap,rowidx(pnt1)) + else + call cspnd(p,snhead(p),diag,nonzeros, + x fpnt,count,pivots,updat,diam,rowidx(pnt1)) + endif + kprew=k + goto 130 +c +c pack a column +c + 150 do k=ppnt1,ppnt2 + nonzeros(k)=updat(rowidx(k)) + enddo +c +c set up diag +c + if((ppnode.le.0).or.(prewnode.ne.snhead(i)))then + diap=diap+diam + diam=max(trabs,abs(diam*trabs)) + if(abs(diap).lt.diam)then + call rngchk(rowidx,nonzeros,ecolpnt(col),count(col), + x vcstat,rb,diag,slktyp,dropn,col,dv,diap,w1,odiag(col)) + if(rb.ne.0)err=1 + diag(col)=diap + if(vcstat(col).le.-2)goto 100 + else + diag(col)=1.0d00/diap + endif + else + diag(col)=diam + updat(col)=diap + endif +c +c Transformation in (primer) supernode +c + 110 if(prewnode.eq.i)then + if(ppnode.gt.0)then + do j=ppnode+1,i + o=j-1 + p=pivots(j) + call cspnode(ppnode,o,diag,nonzeros,fpnt,count,pivots, + x nonzeros(ecolpnt(p)),diag(p)) + diam=max(trabs,abs(diag(p)*trabs)) + diag(p)=diag(p)+updat(p) + if(abs(diag(p)).lt.diam)then + call rngchk(rowidx,nonzeros,ecolpnt(p),count(p), + x vcstat,rb,diag,slktyp,dropn,p,dv,diag(p),w1,odiag(p)) + if(rb.ne.0)err=1 + else + diag(p)=1.0d+0/diag(p) + endif + enddo + endif + ppnode=0 + endif +c +c Update the linked list +c + 180 if(snhead(i).eq.0)then + ppnode=0 + if(ppnt1.le.ppnt2)then + j=rowidx(ppnt1) + mut(col)=index(j) + index(j)=col + endif + prewnode=0 + else + if(prewnode.ne.snhead(i))then + prewnode=snhead(i) + if(nodtyp(i).gt.0)then + ppnode=i + else + ppnode=-i + endif + if(ecolpnt(pivots(prewnode)).le.count(pivots(prewnode)))then + j=rowidx(ecolpnt(pivots(prewnode))) + mut(col)=index(j) + index(j)=-col + endif + endif + endif +c +c end of the main loop +c + goto 100 +c +c end of mfactor +c + 60 if(w1.gt.0)then + write(buff,'(1x,a,i6)')'Total warnings of row dependencies:',w1 + call mprnt(buff) + endif + return + end +c +c ============================================================================= +c ============================================================================= +c + subroutine rngchk(rowidx,nonzeros,pnt1,pnt2, + x vcstat,rb,diag,slktyp,dropn,col,dv,dia,w1,odia) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c + integer*4 pnt1,pnt2,rowidx(cfree),vcstat(mn),rb, + x slktyp(m),dropn,col + real*8 nonzeros(cfree),diag(mn),dv(m),dia,odia +c + integer*4 i,j,w1,wignore + character*99 buff +c +c -------------------------------------------------------------------------- +c + wignore=5 + rb=0 + if(col.le.n)then + if(diag(col).lt.0)then + dia=-1.0d+12 + odia=odia+1.0d+00/dia + else + dia=+1.0d+12 + odia=odia+1.0d+00/dia + endif + else + dia=0.0d+0 +c +c Check for modification columns +c + do 10 i=pnt1,pnt2 + j=rowidx(i) + if((vcstat(j).le.-2).or.(j.gt.n))goto 10 + if(abs(nonzeros(i)).lt.tzer)goto 10 +ccc dia=+1.0+10 +ccc odia=odia+1.0d+00/dia + rb=1 + vcstat(col)=-1 + goto 20 + 10 continue +c +c Dependent row, relax only if the dual variable is zero ! +c + if(abs(dv(col-n)).lt.tzer)then + vcstat(col)=-2 + dropn=dropn+1 + w1=w1+1 + if(w1.le.wignore)then + write(buff,'(1x,a,i5,a,i6)') + x 'WARNING : Row DROPPED ',col-n,' Type:',slktyp(col-n) + call mprnt(buff) + endif + endif + endif + 20 return + end +c +c ========================================================================== +c nem relativ nullazassal +c ========================================================================== +c + subroutine augftr(ecolpnt, + x vcstat,rowidx,pivots,count,nonzeros,diag,vector) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 ecolpnt(mn),vcstat(mn),rowidx(cfree) + integer*4 pivots(mn),count(mn) + real*8 nonzeros(cfree),diag(mn),vector(mn) +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c -------------------------------------------------------------------------- + integer*4 i,j,pnt1,pnt2,col,o + real*8 val +c--------------------------------------------------------------------------- + do i=1,pivotn + col=pivots(i) + if (vcstat(col).gt.-2)then + val=vector(col)*diag(col) + if(abs(val).gt.tzer)then + pnt1=ecolpnt(col) + pnt2=count(col) + do j=pnt1,pnt2 + o=rowidx(j) + vector(o)=vector(o)-val*nonzeros(j) + enddo + endif + endif + enddo + do i=1,mn + if(vcstat(i).le.-2)vector(i)=0 + enddo + return + end +c +c ========================================================================== +c + subroutine augbtr(ecolpnt, + x vcstat,rowidx,pivots,count,nonzeros,diag,vector) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 ecolpnt(mn),vcstat(mn),rowidx(cfree) + integer*4 pivots(mn),count(mn) + real*8 nonzeros(cfree),diag(mn),vector(mn) + common/numer/ tplus,tzer + real*8 tplus,tzer +c -------------------------------------------------------------------------- + integer*4 i,j,col,pnt1,pnt2 + real*8 sol +c--------------------------------------------------------------------------- +c + do i=1,pivotn + col=pivots(pivotn+1-i) + if(vcstat(col).gt.-2)then + sol=vector(col) + pnt1=ecolpnt(col) + pnt2=count(col) + do j=pnt1,pnt2 + sol=sol-nonzeros(j)*vector(rowidx(j)) + enddo + vector(col)=sol*diag(col) + endif + enddo + return + end +c ========================================================================== +c Multi predictor-corrector direction +c L2 norm +c =========================================================================== +c + subroutine citref(diag,odiag,pivots,rowidx,nonzeros,colpnt, + x ecolpnt,count,vcstat,xrhs,rwork1,rwork2,rwork3, + x bounds,xs,up,vartyp,slktyp) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + common/numer/ tplus,tzer + real*8 tplus,tzer + common/itref/ tresx,tresy,maxref + real*8 tresx,tresy + integer*4 maxref +c + integer*4 ecolpnt(mn),count(mn),rowidx(cfree), + x pivots(mn),colpnt(n1),vcstat(mn),vartyp(n),slktyp(m) + real*8 diag(mn),odiag(mn),nonzeros(cfree),xrhs(mn), + x rwork1(mn),rwork2(mn),rwork3(mn),bounds(mn),xs(mn),up(mn) +c +c --------------------------------------------------------------------------- +c + integer*4 i,j,pnt1,pnt2,refn + real*8 maxrx,maxry,sx,sol,l2,ol2 +c +c --------------------------------------------------------------------------- +c +c Simple case : No refinement +c + if(maxref.le.0)then + call augftr(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,xrhs) + call augbtr(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,xrhs) + goto 999 + endif + do i=1,mn + rwork1(i)=xrhs(i) + enddo + ol2=1.0d+0/tzer + do i=1,mn + rwork3(i)=0.0d+0 + enddo + refn=-1 +c +c Main loop +c + 10 refn=refn+1 + call augftr(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,xrhs) + call augbtr(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,xrhs) + do i=1,mn + xrhs(i)=xrhs(i)+rwork3(i) + enddo +c +c Compute the residuals +c + l2=0.0d+0 + maxrx=0.0d+0 + maxry=0.0d+0 + do i=1,mn + rwork2(i)=rwork1(i)-odiag(i)*xrhs(i) + enddo + do i=1,n + if(vcstat(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + sx=xrhs(i) + sol=rwork2(i) + do j=pnt1,pnt2 + rwork2(rowidx(j))=rwork2(rowidx(j))-nonzeros(j)*sx + sol=sol-nonzeros(j)*xrhs(rowidx(j)) + enddo + rwork2(i)=sol + if(maxry.lt.abs(sol))maxry=abs(sol) + l2=l2+sol*sol + endif + enddo + do i=1,m + if(vcstat(i+n).gt.-2)then + if(maxrx.lt.abs(rwork2(i+n)))maxrx=abs(rwork2(i+n)) + l2=l2+rwork2(i+n)*rwork2(i+n) + endif + enddo + l2=sqrt(l2) + if(l2.ge.ol2)then + do i=1,mn + xrhs(i)=rwork3(i) + enddo + else + if((maxrx.gt.tresx).or.(maxry.gt.tresy))then + if(refn.lt.maxref)then + ol2=l2 + do i=1,mn + rwork3(i)=xrhs(i) + xrhs(i)=rwork2(i) + enddo + goto 10 + endif + endif + endif +c +c End of the main loop, reset work3 (upinf)=bounds-xs-up +c + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.lt.0)then + sol=bounds(i)-xs(i)-up(i) + else + sol=0.0d+0 + endif + else + sol=0.0d+0 + endif + rwork3(i)=sol + enddo +c +c return +c + 999 return + end +c +c ============================================================================ +c 6 way loop unrolling +c +c ============================================================================ +c + subroutine cspnode(firstc,lastc,diag,nonzeros, + x fpnt,count,pivots,knz,dia) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 firstc,lastc,fpnt(mn),count(mn),pivots(mn) + real*8 diag(mn),nonzeros(cfree),knz(mn),dia +c + integer*4 pnt11,pnt12,pnt13,pnt14,pnt15,pnt16, + x col1,col2,col3,col4,col5,col6,frs,j,pnt2 + real*8 s1,s2,s3,s4,s5,s6 +c +c compute +c + frs=firstc +c + 99 if(lastc-2-frs) 98,30,97 + 98 if(lastc-frs) 999,10,20 + 97 if(lastc-4-frs) 40,50,60 +c +c +c + 60 col1=pivots(frs) + col2=pivots(frs+1) + col3=pivots(frs+2) + col4=pivots(frs+3) + col5=pivots(frs+4) + col6=pivots(frs+5) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt13=fpnt(col3) + pnt14=fpnt(col4) + pnt15=fpnt(col5) + pnt16=fpnt(col6) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + fpnt(col3)=pnt13+1 + fpnt(col4)=pnt14+1 + fpnt(col5)=pnt15+1 + fpnt(col6)=pnt16+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + s3=-nonzeros(pnt13)*diag(col3) + s4=-nonzeros(pnt14)*diag(col4) + s5=-nonzeros(pnt15)*diag(col5) + s6=-nonzeros(pnt16)*diag(col6) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2+ + x nonzeros(pnt13)*s3+nonzeros(pnt14)*s4+ + x nonzeros(pnt15)*s5+nonzeros(pnt16)*s6 + do j=1,pnt2 + knz(j)=knz(j)+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2+ + x nonzeros(pnt13+j)*s3+nonzeros(pnt14+j)*s4+ + x nonzeros(pnt15+j)*s5+nonzeros(pnt16+j)*s6 + enddo + frs=frs+6 + goto 99 +c +c +c + 50 col1=pivots(frs) + col2=pivots(frs+1) + col3=pivots(frs+2) + col4=pivots(frs+3) + col5=pivots(frs+4) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt13=fpnt(col3) + pnt14=fpnt(col4) + pnt15=fpnt(col5) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + fpnt(col3)=pnt13+1 + fpnt(col4)=pnt14+1 + fpnt(col5)=pnt15+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + s3=-nonzeros(pnt13)*diag(col3) + s4=-nonzeros(pnt14)*diag(col4) + s5=-nonzeros(pnt15)*diag(col5) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2+ + x nonzeros(pnt13)*s3+nonzeros(pnt14)*s4+ + x nonzeros(pnt15)*s5 + do j=1,pnt2 + knz(j)=knz(j)+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2+ + x nonzeros(pnt13+j)*s3+nonzeros(pnt14+j)*s4+ + x nonzeros(pnt15+j)*s5 + enddo + goto 999 +c +c +c + 40 col1=pivots(frs) + col2=pivots(frs+1) + col3=pivots(frs+2) + col4=pivots(frs+3) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt13=fpnt(col3) + pnt14=fpnt(col4) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + fpnt(col3)=pnt13+1 + fpnt(col4)=pnt14+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + s3=-nonzeros(pnt13)*diag(col3) + s4=-nonzeros(pnt14)*diag(col4) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2+ + x nonzeros(pnt13)*s3+nonzeros(pnt14)*s4 + do j=1,pnt2 + knz(j)=knz(j)+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2+ + x nonzeros(pnt13+j)*s3+nonzeros(pnt14+j)*s4 + enddo + goto 999 +c +c +c + 30 col1=pivots(frs) + col2=pivots(frs+1) + col3=pivots(frs+2) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt13=fpnt(col3) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + fpnt(col3)=pnt13+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + s3=-nonzeros(pnt13)*diag(col3) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2+ + x nonzeros(pnt13)*s3 + do j=1,pnt2 + knz(j)=knz(j)+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2+ + x nonzeros(pnt13+j)*s3 + enddo + goto 999 +c +c +c + 20 col1=pivots(frs) + col2=pivots(frs+1) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2 + do j=1,pnt2 + knz(j)=knz(j)+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2 + enddo + goto 999 +c +c +c + 10 col1=pivots(frs) + pnt11=fpnt(col1) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + s1=-nonzeros(pnt11)*diag(col1) + dia=dia+ + x nonzeros(pnt11)*s1 + do j=1,pnt2 + knz(j)=knz(j)+ + x nonzeros(pnt11+j)*s1 + enddo +c + 999 return + end +c +c ========================================================================== +c 6 way loop unrolling +c +c ============================================================================ +c + subroutine cspnd(firstc,lastc,diag,nonzeros, + x fpnt,count,pivots,knz,dia,index) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 firstc,lastc,fpnt(mn),count(mn),pivots(mn),index(mn) + real*8 diag(mn),nonzeros(cfree),knz(mn),dia +c + integer*4 pnt11,pnt12,pnt13,pnt14,pnt15,pnt16, + x col1,col2,col3,col4,col5,col6,frs,j,pnt2 + real*8 s1,s2,s3,s4,s5,s6 +c +c compute +c + frs=firstc +c + 99 if(lastc-2-frs) 98,30,97 + 98 if(lastc-frs) 999,10,20 + 97 if(lastc-4-frs) 40,50,60 +c +c +c + 60 col1=pivots(frs) + col2=pivots(frs+1) + col3=pivots(frs+2) + col4=pivots(frs+3) + col5=pivots(frs+4) + col6=pivots(frs+5) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt13=fpnt(col3) + pnt14=fpnt(col4) + pnt15=fpnt(col5) + pnt16=fpnt(col6) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + fpnt(col3)=pnt13+1 + fpnt(col4)=pnt14+1 + fpnt(col5)=pnt15+1 + fpnt(col6)=pnt16+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + s3=-nonzeros(pnt13)*diag(col3) + s4=-nonzeros(pnt14)*diag(col4) + s5=-nonzeros(pnt15)*diag(col5) + s6=-nonzeros(pnt16)*diag(col6) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2+ + x nonzeros(pnt13)*s3+nonzeros(pnt14)*s4+ + x nonzeros(pnt15)*s5+nonzeros(pnt16)*s6 + do j=1,pnt2 + knz(index(j))=knz(index(j))+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2+ + x nonzeros(pnt13+j)*s3+nonzeros(pnt14+j)*s4+ + x nonzeros(pnt15+j)*s5+nonzeros(pnt16+j)*s6 + enddo + frs=frs+6 + goto 99 +c +c +c + 50 col1=pivots(frs) + col2=pivots(frs+1) + col3=pivots(frs+2) + col4=pivots(frs+3) + col5=pivots(frs+4) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt13=fpnt(col3) + pnt14=fpnt(col4) + pnt15=fpnt(col5) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + fpnt(col3)=pnt13+1 + fpnt(col4)=pnt14+1 + fpnt(col5)=pnt15+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + s3=-nonzeros(pnt13)*diag(col3) + s4=-nonzeros(pnt14)*diag(col4) + s5=-nonzeros(pnt15)*diag(col5) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2+ + x nonzeros(pnt13)*s3+nonzeros(pnt14)*s4+ + x nonzeros(pnt15)*s5 + do j=1,pnt2 + knz(index(j))=knz(index(j))+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2+ + x nonzeros(pnt13+j)*s3+nonzeros(pnt14+j)*s4+ + x nonzeros(pnt15+j)*s5 + enddo + goto 999 +c +c +c + 40 col1=pivots(frs) + col2=pivots(frs+1) + col3=pivots(frs+2) + col4=pivots(frs+3) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt13=fpnt(col3) + pnt14=fpnt(col4) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + fpnt(col3)=pnt13+1 + fpnt(col4)=pnt14+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + s3=-nonzeros(pnt13)*diag(col3) + s4=-nonzeros(pnt14)*diag(col4) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2+ + x nonzeros(pnt13)*s3+nonzeros(pnt14)*s4 + do j=1,pnt2 + knz(index(j))=knz(index(j))+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2+ + x nonzeros(pnt13+j)*s3+nonzeros(pnt14+j)*s4 + enddo + goto 999 +c +c +c + 30 col1=pivots(frs) + col2=pivots(frs+1) + col3=pivots(frs+2) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt13=fpnt(col3) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + fpnt(col3)=pnt13+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + s3=-nonzeros(pnt13)*diag(col3) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2+ + x nonzeros(pnt13)*s3 + do j=1,pnt2 + knz(index(j))=knz(index(j))+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2+ + x nonzeros(pnt13+j)*s3 + enddo + goto 999 +c +c +c + 20 col1=pivots(frs) + col2=pivots(frs+1) + pnt11=fpnt(col1) + pnt12=fpnt(col2) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + fpnt(col2)=pnt12+1 + s1=-nonzeros(pnt11)*diag(col1) + s2=-nonzeros(pnt12)*diag(col2) + dia=dia+ + x nonzeros(pnt11)*s1+nonzeros(pnt12)*s2 + do j=1,pnt2 + knz(index(j))=knz(index(j))+ + x nonzeros(pnt11+j)*s1+nonzeros(pnt12+j)*s2 + enddo + goto 999 +c +c +c + 10 col1=pivots(frs) + pnt11=fpnt(col1) + pnt2=count(col1)-pnt11 + fpnt(col1)=pnt11+1 + s1=-nonzeros(pnt11)*diag(col1) + dia=dia+ + x nonzeros(pnt11)*s1 + do j=1,pnt2 + knz(index(j))=knz(index(j))+ + x nonzeros(pnt11+j)*s1 + enddo +c + 999 return + end +c +c ========================================================================== +c =========================================================================== +c + subroutine supnode(ecolpnt,count,rowidx,vcstat,pivots, + x snhead,invperm,nodtyp) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + common/sprnod/ psupn,ssupn,maxsnz + integer*4 psupn,ssupn,maxsnz +c + integer*4 ecolpnt(mn),count(mn),rowidx(cfree),vcstat(mn), + x pivots(mn),snhead(mn),invperm(mn),nodtyp(mn) +c + integer*4 i,j,k,l,i1,i2,ppnt1,ppnt2,pnt1,pnt2,pcol,col,snmode + integer*4 sn1,sn2,ss1,ss2,supnz + character*99 buff +c + 1 format(1x,'Supernodes :',i12,' ',i12) + 2 format(1x,'Supernodal cols. :',i12,' ',i12) + 3 format(1x,'Dense window :',i12) +c +C CMSSW: Explicit initialization needed + j=0 + + do i=1,mn + snhead(i)=0 + invperm(i)=0 + nodtyp(mn)=0 + enddo + do i=1,pivotn + invperm(pivots(i))=i + enddo + sn1=0 + sn2=0 + ss1=0 + ss2=0 + pnt1=1 + pnt2=0 + i=0 + 10 i=i+1 + if(i.le.pivotn)then + pcol=pivots(i) + if(vcstat(pcol).gt.-2)then + j=0 + ppnt1=ecolpnt(pcol) + ppnt2=count(pcol) + k=i+1 + snmode=1 + supnz=pnt2-pnt1+1 + 20 if((k.le.pivotn).and.(ppnt1.le.ppnt2))then + col=pivots(k) + pnt1=ecolpnt(col) + pnt2=count(col) + supnz=supnz+pnt2-pnt1+1 + if(((ppnt2-ppnt1-pnt2+pnt1).eq.1).and.(supnz.lt.maxsnz))then + if(col.ne.rowidx(ppnt1))goto 30 + i2=ppnt1+1 + i1=pnt1 + 40 if(i1.le.pnt2)then + if(rowidx(i1).ne.rowidx(i2))goto 30 + i1=i1+1 + i2=i2+1 + goto 40 + endif + k=k+1 + ppnt1=ppnt1+1 + goto 20 + endif + endif + 30 if(k.eq.i+1)then + snmode=-1 + supnz=pnt2-pnt1+1 + 25 if((k.le.pivotn).and.(ppnt1.le.ppnt2))then + col=pivots(k) + pnt1=ecolpnt(col) + pnt2=count(col) + supnz=supnz+pnt2-pnt1+1 + if((ppnt2-ppnt1.eq.pnt2-pnt1).and.(supnz.le.maxsnz))then + i2=ppnt1 + i1=pnt1 + 45 if(i1.le.pnt2)then + if(rowidx(i1).ne.rowidx(i2))goto 35 + i1=i1+1 + i2=i2+1 + goto 45 + endif + k=k+1 + goto 25 + endif + endif + endif + 35 if(snmode.eq.1)then + denwin=k-i + if((k-i).lt.psupn)goto 10 + sn1=sn1+1 + ss1=ss1+(k-i) + j=sn1 + else + if((k-i).lt.ssupn)goto 10 + sn2=sn2+1 + ss2=ss2+(k-i) + j=-sn2 + endif + do l=i,k-1 + snhead(l)=j + nodtyp(l)=j + enddo + i=k-1 + endif + goto 10 + endif + write(buff,1)sn1,sn2 + call mprnt(buff) + write(buff,2)ss1,ss2 + call mprnt(buff) + write(buff,3)denwin + call mprnt(buff) + k=0 + do i=pivotn,1,-1 + if(snhead(i).ne.0)then + if(k.ne.snhead(i))then + j=i + k=snhead(i) + endif + snhead(i)=j + else + k=0 + endif + enddo + return + end +c +c ============================================================================ +c Update supernode partitions after column fixing +c (only in the sparse part of the constraint matrix) +c ============================================================================= +c + subroutine supupd(pivots,invperm,snhead,nodtyp,vcstat, + x ecolpnt) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 pivots(mn),invperm(mn),snhead(mn),nodtyp(mn), + x ecolpnt(mn),vcstat(mn) +c + integer*4 i,j,k +c +c Make changes : Compress pivots,nodetyp,snhead +c + i=1 + j=0 + 10 if(i.le.pivotn)then + k=pivots(i) + if((ecolpnt(k).gt.nz).or.(vcstat(k).gt.-2))then + j=j+1 + pivots(j)=pivots(i) + snhead(j)=snhead(i) + nodtyp(j)=nodtyp(i) + endif + invperm(i)=j + i=i+1 + goto 10 + endif + pivotn=j +c +c Change snhead +c + do j=1,pivotn + if(snhead(j).gt.0)snhead(j)=invperm(snhead(j)) + enddo +c +c Create new invperm +c + do j=1,pivotn + invperm(pivots(j))=j + enddo + return + end +c +c ============================================================================= +c Computing the starting point xs,up in the primal space, +c dv, dspr,dsup in the dual space. +c +c =========================================================================== +c + subroutine initsol(xs,up,dv,dspr,dsup,rhs,obj,bounds,vartyp, + x slktyp,vcstat,colpnt,ecolpnt,pivots,rowidx,nonzeros,diag, + x updat1,count) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/initv/ prmin,upmax,dumin,stamet,safmet,premet,regul + real*8 prmin,upmax,dumin + integer*4 stamet,safmet,premet,regul +c + common/mscal/ varadd,slkadd,scfree + real*8 varadd,slkadd,scfree +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c + integer*4 ecolpnt(mn),vcstat(mn),colpnt(n1),rowidx(cfree), + x pivots(mn),vartyp(n),slktyp(m),count(mn) + real*8 xs(mn),up(mn),dv(m),dspr(mn),dsup(mn),rhs(m),obj(n), + x bounds(mn),diag(mn),updat1(mn),nonzeros(cfree) +c + integer*4 i,j,pnt1,pnt2 + real*8 sol,sb,spr,sdu,prlo,dulo,ngap + logical addall +c +c --------------------------------------------------------------------------- +c +c Reset all values +c + do i=1,mn + xs(i)=0.0d+0 + up(i)=0.0d+0 + dspr(i)=0.0d+0 + dsup(i)=0.0d+0 + if(i.le.m)dv(i)=0.0d+0 + enddo +c +c RHS for XS ans UP +c + do i=1,m + if(slktyp(i).lt.0)then + if(bounds(i+n).gt.upmax)then + sol=upmax/2 + else + sol=bounds(i+n)/2 + endif + else + sol=0.0d+0 + endif + updat1(i+n)=rhs(i)+sol + enddo + do i=1,n + if(vartyp(i).lt.0)then + if(bounds(i).gt.upmax)then + sol=-upmax + else + sol=-bounds(i) + endif + else + sol=0.0d+0 + endif + updat1(i)=sol + enddo +c + call augftr(ecolpnt, + x vcstat,rowidx,pivots,count,nonzeros,diag,updat1) + call augbtr(ecolpnt, + x vcstat,rowidx,pivots,count,nonzeros,diag,updat1) +c +c Initial values for xs, up +c + do i=1,n + if(vcstat(i).gt.-2)then + xs(i)=updat1(i) + if(vartyp(i).lt.0)then + up(i)=bounds(i)-xs(i) + endif + endif + enddo + do i=1,m + j=i+n + if((vcstat(j).gt.-2).and.(slktyp(i).ne.0))then + xs(j)=-updat1(j) + if(slktyp(i).lt.0)then + xs(j)=(bounds(j)-updat1(j))/2 + up(j)=bounds(j)-xs(j) + endif + endif + enddo +c +c Initial dual variables, stamet=2 +c + if(stamet.eq.1)then + do i=1,m + dv(i)=0 + dspr(i+n)=0 + dsup(i+n)=0 + enddo + do i=1,n + if((vcstat(i).gt.-2).and.(vartyp(i).ne.0))then + if(vartyp(i).lt.0)then + dspr(i)=obj(i)/2 + dsup(i)=-obj(i)/2 + else + dspr(i)=obj(i) + endif + endif + enddo + else if(stamet.eq.2)then + do i=1,m + updat1(i+n)=0.0d+0 + enddo + do i=1,n + updat1(i)=obj(i) + enddo + call augftr(ecolpnt, + x vcstat,rowidx,pivots,count,nonzeros,diag,updat1) + call augbtr(ecolpnt, + x vcstat,rowidx,pivots,count,nonzeros,diag,updat1) + do i=1,m + if(vcstat(i+n).gt.-2)then + dv(i)=updat1(i+n) + else + dv(i)=0.0d+0 + endif + if(slktyp(i).ne.0)then + dspr(i+n)=-dv(i) + if(slktyp(i).lt.0)then + dspr(i+n)=-dv(i)/2 + dsup(i+n)=dv(i)/2 + endif + endif + enddo + do i=1,n + if((vcstat(i).gt.-2).and.(vartyp(i).ne.0))then + if(vartyp(i).lt.0)then + dspr(i)=-updat1(i) + dsup(i)=updat1(i) + else + dspr(i)=-updat1(i) + endif + endif + enddo + endif +c +c Compute prmin,dumin +c + if(safmet.lt.0)then + safmet=-safmet + addall=.true. + else + addall=.false. + endif +c +c Marsten et al. +c + if(safmet.eq.2)then + do i=1,m + updat1(i)=0 + enddo + do i=1,n + if(vcstat(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + sol=0.0d+0 + sb=obj(i) + do j=pnt1,pnt2 + if(vcstat(rowidx(j)).gt.-2)then + sol=sol+rhs(rowidx(j)-n)*nonzeros(j) + updat1(rowidx(j)-n)=updat1(rowidx(j)-n)+nonzeros(j)*sb + endif + enddo + if(prmin.lt.sol)prmin=sol + endif + enddo + do i=1,m + if(dumin.lt.abs(updat1(i)))dumin=abs(updat1(i)) + enddo + endif +c +c Mehrotra +c + if(safmet.eq.3)then + spr=1.0d+0/tzer + sdu=1.0d+0/tzer + do i=1,mn + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if((vcstat(i).gt.-2).and.(j.ne.0))then + if(spr.gt.xs(i))spr=xs(i) + if(sdu.gt.dspr(i))sdu=dspr(i) + if(j.lt.0)then + if(spr.gt.up(i))spr=up(i) + if(sdu.gt.dsup(i))sdu=dsup(i) + endif + endif + enddo + spr=-1.5d+0*spr + sdu=-1.5d+0*sdu + if(spr.lt.0.001d+0)spr=0.001d+0 + if(sdu.lt.0.001d+0)sdu=0.001d+0 + prlo=0.0d+0 + dulo=0.0d+0 + ngap=0.0d+0 + do i=1,mn + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if((vcstat(i).gt.-2).and.(j.ne.0))then + sol=xs(i)+spr + sb=dspr(i)+sdu + ngap=ngap+sol*sb + prlo=prlo+sol + dulo=dulo+sb + if(j.lt.0)then + sol=up(i)+spr + sb=dsup(i)+sdu + ngap=ngap+sol*sb + prlo=prlo+sol + dulo=dulo+sb + endif + endif + enddo + prmin=spr+0.5d+0*ngap/dulo + dumin=sdu+0.5d+0*ngap/prlo + endif + if(addall.and.(safmet.lt.3))then + sol=1.0d+0/tzer + sb=1.0d+0/tzer + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.ne.0)then + if(sol.gt.xs(i))sol=xs(i) + if(sb.gt.dspr(i))sb=dspr(i) + endif + if(j.lt.0)then + if(sol.gt.up(i))sol=up(i) + if(sb.gt.dsup(i))sb=dsup(i) + endif + endif + enddo + if(sol.lt.0)prmin=prmin-sol + if(sb.lt.0)dumin=dumin-sb + endif +c +c Correcting +c + if(addall)then + spr=1.0d+0/tzer + sdu=1.0d+0/tzer + sol=1.0d+0 + else + spr=prmin + sdu=dumin + sol=0.0d+0 + endif + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.ne.0)then + if(xs(i).lt.spr)then + xs(i)=sol*xs(i)+prmin + endif + if(dspr(i).lt.sdu)then + dspr(i)=sol*dspr(i)+dumin + endif + if(j.lt.0)then + if(up(i).lt.spr)then + up(i)=sol*up(i)+prmin + endif + if(dsup(i).lt.sdu)then + dsup(i)=sol*dsup(i)+dumin + endif + endif + endif + endif + enddo +c + return + end +c +c =========================================================================== +c +c Set up the initial scaling matrix +c (for the computation of the initial solution) +c + subroutine fscale(vcstat,diag,odiag,vartyp,slktyp) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + common/mscal/ varadd,slkadd,scfree + real*8 varadd,slkadd,scfree +c + integer*4 vcstat(mn),vartyp(n),slktyp(m) + real*8 diag(mn),odiag(mn) +c + integer*4 i,j + real*8 sol +c + do i=1,mn + sol=0.0d+0 + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + if(j.gt.0)then + sol=-1.0d0 + else if(j.lt.0)then + sol=-2.0d0 + else + sol=-scfree + endif + else + j=slktyp(i-n) + if(j.gt.0)then + sol=1.0d0 + else if(j.lt.0)then + sol=0.5d+0 + else + sol=0.0d+0 + endif + endif + endif + diag(i)=sol + odiag(i)=sol + enddo + return + end +c +c ============================================================================ +c Compute primal, upper, dual infeasibilities +c =========================================================================== +c + subroutine cprinf(xs,prinf,slktyp,colpnt,rowidx,nonzeros, + x rhs,vcstat,pinf) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 slktyp(m),colpnt(n1),rowidx(nz),vcstat(mn) + real*8 xs(mn),prinf(m),rhs(m),nonzeros(nz),pinf +c + integer*4 i,j,pnt1,pnt2 + real*8 sol +c +c --------------------------------------------------------------------------- +c + do i=1,m + prinf(i)=rhs(i) + enddo + pinf=0.0D+0 +c + do i=1,n + if(vcstat(i).gt.-2)then + sol=xs(i) + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + prinf(rowidx(j)-n)=prinf(rowidx(j)-n)-sol*nonzeros(j) + enddo + endif + enddo + do i=1,m + if(vcstat(i+n).gt.-2)then + if(slktyp(i).ne.0)then + sol=prinf(i)+xs(i+n) + else + sol=prinf(i) + endif + else + sol=0.0d+0 + endif + prinf(i)=sol + if(pinf.lt.abs(sol))pinf=abs(sol) + enddo + return + end +c +c =========================================================================== +c + subroutine cupinf(xs,up,upinf,bounds,vartyp,slktyp,vcstat, + x uinf) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 vartyp(n),slktyp(m),vcstat(mn) + real*8 xs(mn),up(mn),upinf(mn),bounds(mn),uinf +c + integer*4 i +c + do i=1,mn + upinf(i)=0.0d+0 + enddo + uinf=0.0d+0 + do i=1,n + if((vcstat(i).gt.-2).and.(vartyp(i).lt.0))then + upinf(i)=bounds(i)-xs(i)-up(i) + if(uinf.lt.abs(upinf(i)))uinf=abs(upinf(i)) + endif + enddo + do i=1,m + if((vcstat(i+n).gt.-2).and.(slktyp(i).lt.0))then + upinf(i+n)=bounds(i+n)-xs(i+n)-up(i+n) + if(uinf.lt.abs(upinf(i+n)))uinf=abs(upinf(i+n)) + endif + enddo + return + end +c +c ============================================================================ +c + subroutine cduinf(dv,dspr,dsup,duinf,vartyp,slktyp,colpnt, + x rowidx,nonzeros,obj,vcstat,dinf) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 vartyp(n),slktyp(m),colpnt(n1),rowidx(nz), + x vcstat(mn) + real*8 dv(m),dspr(mn),dsup(mn),duinf(mn),nonzeros(nz),obj(n), + x dinf +c + integer*4 i,j,pnt1,pnt2 + real*8 sol +c +c ------------------------------------------------------------------------------ +c + dinf=0.0d+0 +c + do i=1,m + sol=0.0d+0 + if(vcstat(i+n).gt.-2)then + if(slktyp(i).gt.0)then + sol=dv(i)-dspr(i+n) + else if(slktyp(i).lt.0)then + sol=dv(i)-dspr(i+n)+dsup(i+n) + endif + endif + duinf(i+n)=sol + enddo +c + do i=1,n + sol=0.0d+0 + if(vcstat(i).gt.-2)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + if(vcstat(rowidx(j)).gt.-2)then + sol=sol+dv(rowidx(j)-n)*nonzeros(j) + endif + enddo + if(vartyp(i))10,11,12 +c +c Upper bounded variable +c + 10 sol=obj(i)-sol-dspr(i)+dsup(i) + goto 15 +c +c Free variable +c + 11 sol=obj(i)-sol + goto 15 +c +c Standard variable +c + 12 sol=obj(i)-sol-dspr(i) + endif + 15 duinf(i)=sol + enddo +c +c Compute absolute and relative infeasibility +c + do i=1,mn + sol=abs(duinf(i)) + if(dinf.lt.sol)dinf=sol + enddo +c + return + end +c +c ============================================================================== +c + subroutine cpdobj(popt,dopt,obj,rhs,bounds,xs,dv, + x dsup,vcstat,vartyp,slktyp) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 vcstat(mn),vartyp(n),slktyp(m) + real*8 popt,dopt,obj(n),rhs(m),bounds(mn),xs(mn),dv(m),dsup(mn) +c + integer*4 i +c + popt=0.0d+0 + dopt=0.0d+0 + do i=1,n + if(vcstat(i).gt.-2)then + popt=popt+obj(i)*xs(i) + if(vartyp(i).lt.0)then + dopt=dopt-bounds(i)*dsup(i) + endif + endif + enddo + do i=1,m + if(vcstat(i+n).gt.-2)then + dopt=dopt+rhs(i)*dv(i) + if(slktyp(i).lt.0)then + dopt=dopt-bounds(i+n)*dsup(i+n) + endif + endif + enddo + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine stpcrt(prelinf,drelinf,popt,dopt,cgap, + x iter,code,pphase,dphase,maxstp,pinf,uinf,dinf, + x prinf,upinf,duinf,oldmp,pb,db, + x prstpl,dustpl,obj,rhs,bounds,xs,dxs,dspr,ddspr,dsup, + x ddsup,dv,ddv,up,addobj,scobj,vcstat,vartyp,slktyp, + x oprelinf,odrelinf,opinf,odinf,ocgap,opphas,odphas,buff) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + real*8 prelinf,drelinf,popt,dopt,cgap,maxstp, + x pinf,uinf,oldmp,dinf,pb,db,oprelinf,odrelinf,opinf,odinf,ocgap + integer*4 iter,code,pphase,dphase,opphas,odphas +c + real*8 prstpl,dustpl,obj(n),rhs(m),bounds(mn),xs(mn),dxs(mn), + x dspr(mn),ddspr(mn),dsup(mn),ddsup(mn),dv(m),ddv(m),upinf(mn), + x up(mn),prinf(m),duinf(mn),addobj,scobj + integer*4 vcstat(mn),vartyp(n),slktyp(m) + character*99 buff +c + common/toler/ tsdir,topt1,topt2,tfeas1,tfeas2,feas1,feas2, + x pinfs,dinfs,inftol,maxiter + real*8 tsdir,topt1,topt2,tfeas1,tfeas2,feas1,feas2, + x pinfs,dinfs,inftol + integer*4 maxiter +c + real*8 oldpopt,olddopt,objnrm,rhsnrm,bndnrm,urelinf,mp + integer*4 i +c + prelinf=0.0d+0 + urelinf=0.0d+0 + drelinf=0.0d+0 + objnrm =0.0d+0 + rhsnrm =0.0d+0 + bndnrm =0.0d+0 + + do i=1,n + if(vcstat(i).gt.-2)then + objnrm=objnrm+obj(i)*obj(i) + drelinf=drelinf+duinf(i)*duinf(i) + if(vartyp(i).lt.0)then + bndnrm=bndnrm+bounds(i)*bounds(i) + urelinf=urelinf+upinf(i)*upinf(i) + endif + endif + enddo + do i=1,m + if(vcstat(i+n).gt.-2)then + rhsnrm=rhsnrm+rhs(i)*rhs(i) + prelinf=prelinf+prinf(i)*prinf(i) + drelinf=drelinf+duinf(i+n)*duinf(i+n) + if(slktyp(i).lt.0)then + bndnrm=bndnrm+bounds(i+n)*bounds(i+n) + urelinf=urelinf+upinf(i+n)*upinf(i+n) + endif + endif + enddo +c + prelinf=sqrt(prelinf+urelinf)/(1.0d+0+sqrt(bndnrm+rhsnrm)) + drelinf=sqrt(drelinf)/(1.0d+0+sqrt(objnrm)) + if(drelinf.gt.dinf)drelinf=dinf + if(prelinf.gt.max(pinf,uinf))prelinf=max(pinf,uinf) +c + mp=prelinf+drelinf+ + x abs(popt-dopt)/scobj/(1.0d+0+sqrt(rhsnrm+bndnrm)+sqrt(objnrm)) + if(iter.le.1)oldmp=mp +c + code=0 + if((prelinf.lt.tfeas1).and. + x (pinf.lt.feas1).and.(uinf.lt.feas1))then + pphase=2 + else + pphase=1 + pb=abs(pb-pinf)/(abs(pinf)) + endif + if((drelinf.lt.tfeas2).and.(dinf.lt.feas2))then + dphase=2 + else + dphase=1 + db=abs(db-dinf)/(abs(dinf)) + endif +c + if((abs(popt-dopt)/(abs(popt)+1.0d+0).le.topt1) + x. and.(pphase.eq.2).and.(dphase.eq.2))then + code=2 + write(buff,'(1x,a)') + x 'Stopping criterion : Small infeasibility and duality gap' + else if((popt.lt.dopt).and.(pphase.eq.2).and.(dphase.eq.2))then + code=0 + if(iter.gt.0)then + call cpdobj(oldpopt,olddopt,obj,rhs,bounds,dxs,ddv,ddsup, + x vcstat,vartyp,slktyp) + oldpopt=popt-oldpopt*scobj*prstpl + olddopt=dopt-olddopt*scobj*dustpl + if(oldpopt.ge.olddopt)then + code=2 + maxstp=1.0d+0-(oldpopt-olddopt)/(dopt-olddopt-popt+oldpopt) + dustpl=-maxstp*dustpl + prstpl=-maxstp*prstpl + call cnewpd(prstpl,xs,dxs,up,upinf,dustpl,dv,ddv,dspr, + x ddspr,dsup,ddsup,vartyp,slktyp,vcstat,maxstp) + call cpdobj(popt,dopt,obj,rhs,bounds,xs,dv,dsup, + x vcstat,vartyp,slktyp) + popt=popt*scobj+addobj + dopt=dopt*scobj+addobj + endif + endif + if(code.gt.0)then + write(buff,'(1x,a)') + x 'Stopping criterion : Small infeasibility and duality gap' + else + write(buff,'(1x,a)') + x 'Stopping criterion : Negative gap (Wrong tolerances ?)' + code=1 + endif + else if((mp.gt.topt1).and.(mp.gt.inftol*oldmp))then + if(pphase+dphase.eq.4)then + code=1 + write(buff,'(1x,a)') + x 'Stopping Criterion: Possible numerical problems' + else if (opphas+odphas.eq.4)then + code=1 + write(buff,'(1x,a)') + x 'Stopping Criterion: Instability, Suboptimal solution' + dustpl=-dustpl + prstpl=-prstpl + call cnewpd(prstpl,xs,dxs,up,upinf,dustpl,dv,ddv,dspr, + x ddspr,dsup,ddsup,vartyp,slktyp,vcstat,maxstp) + call cpdobj(popt,dopt,obj,rhs,bounds,xs,dv,dsup, + x vcstat,vartyp,slktyp) + call cpdobj(popt,dopt,obj,rhs,bounds,xs,dv,dsup, + x vcstat,vartyp,slktyp) + popt=popt*scobj+addobj + dopt=dopt*scobj+addobj + prelinf=oprelinf + drelinf=odrelinf + pinf=opinf + dinf=odinf + pphase=opphas + dphase=odphas + cgap=ocgap + else + write(buff,'(1x,a)') + x 'Stopping Criterion: Problem infeasibile' + code=4 + if(pphase.eq.2)code=3 + endif + else if(abs(cgap).lt.topt2)then + code=1 + if((pphase.eq.2).and.(dphase.eq.2))code=2 + write(buff,'(1x,a)') + x 'Stopping Criterion : Small complementarity gap' + else if(iter.ge.maxiter)then + code=1 + write(buff,'(1x,a)') + x 'Stopping Criterion : Iteration limit is exeeded' + else if(maxstp.lt.tsdir)then + code=1 + write(buff,'(1x,a)') + x 'Stopping Criterion : Very small step' + else if((iter.gt.0).and.(pphase.eq.1).and.(pb.lt.pinfs))then + code=4 + write(buff,'(1x,a)') + x 'Stopping Criterion: Pinfs limit. Problem primal infeasibile' + else if((iter.gt.0).and.(dphase.eq.1).and.(db.lt.dinfs))then + code=3 + write(buff,'(1x,a)') + x 'Stopping Criterion: Dinfs limit. Problem dual infeasibile' + endif + if(oldmp.gt.mp)oldmp=mp + oprelinf=prelinf + odrelinf=drelinf + opinf=pinf + odinf=dinf + opphas=pphase + odphas=dphase + ocgap=cgap + return + end +c +c =========================================================================== +c Compute the primal and dual steplengts +c +c =========================================================================== +c + subroutine cstpln(prstpl,xs,dxs,up,upinf, + x dustpl,dspr,ddspr,dsup,ddsup,vartyp,slktyp,vcstat) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + common/param/ palpha,dalpha + real*8 palpha,dalpha +c + integer*4 vartyp(n),slktyp(m),vcstat(mn) + real*8 prstpl,xs(mn),dxs(mn),up(mn),upinf(mn), + x dustpl,dspr(mn),ddspr(mn),dsup(mn),ddsup(mn) +c + integer*4 i,j + real*8 sol,dup +c + prstpl=1.0d0/palpha + dustpl=1.0d0/dalpha + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.ne.0)then + if(dxs(i).lt.0.0d+0)then + sol=-xs(i)/dxs(i) + if(sol.lt.prstpl)prstpl=sol + endif + if(ddspr(i).lt.0.0d+0)then + sol=-dspr(i)/ddspr(i) + if(sol.lt.dustpl)dustpl=sol + endif + if (j.lt.0)then + dup=upinf(i)-dxs(i) + if(dup.lt.0.0d+0)then + sol=-up(i)/dup + if(sol.lt.prstpl)prstpl=sol + endif + if(ddsup(i).lt.0.0d+0)then + sol=-dsup(i)/ddsup(i) + if(sol.lt.dustpl)dustpl=sol + endif + endif + endif + endif + enddo + return + end +c +c =========================================================================== +c Compute the new primal and dual solution +c +c =========================================================================== +c + subroutine cnewpd(prstpl,xs,dxs,up,upinf,dustpl,dv,ddv, + x dspr,ddspr,dsup,ddsup,vartyp,slktyp,vcstat,maxd) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 vartyp(n),slktyp(m),vcstat(mn) + real*8 prstpl,xs(mn),dxs(mn),up(mn),upinf(mn),dustpl,dv(m), + x ddv(m),dspr(mn),ddspr(mn),dsup(mn),ddsup(mn),maxd +c + integer*4 i,j + real*8 maxdd,maxdp +c + maxdp=0.0d+0 + maxdd=0.0d+0 + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + dv(i-n)=dv(i-n)+dustpl*ddv(i-n) + if(maxdd.lt.abs(ddv(i-n)))maxdd=abs(ddv(i-n)) + endif + if((i.le.n).or.(j.ne.0))then + xs(i)=xs(i)+prstpl*dxs(i) + if(maxdp.lt.abs(dxs(i)))maxdp=abs(dxs(i)) + dspr(i)=dspr(i)+dustpl*ddspr(i) + if(maxdd.lt.abs(ddspr(i)))maxdd=abs(ddspr(i)) + endif + if (j.lt.0)then + up(i)=up(i)+prstpl*(upinf(i)-dxs(i)) + if(maxdp.lt.abs(upinf(i)-dxs(i)))maxdp=abs(upinf(i)-dxs(i)) + dsup(i)=dsup(i)+dustpl*ddsup(i) + if(maxdd.lt.abs(ddsup(i)))maxdd=abs(ddsup(i)) + endif + endif + enddo + maxd=max(maxdp*prstpl,maxdd*dustpl) + return + end +c +c =========================================================================== +c Fixing variables and dropping rows +c =========================================================================== +c + subroutine varfix(vartyp,slktyp,rhs,colpnt,rowidx,nonzeros, + x xs,up,dspr,dsup,vcstat,fixn,dropn,addobj,scobj,obj,bounds, + x duinf,dinf,fxp,fxd,fxu) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/drop/ tfixvar,tfixslack,slklim + real*8 tfixvar,tfixslack,slklim +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c + common/mscal/ varadd,slkadd,scfree + real*8 varadd,slkadd,scfree +c + integer*4 colpnt(n1),vartyp(n),slktyp(m),rowidx(nz), + x vcstat(mn),fixn,dropn,fxp,fxd,fxu + real*8 rhs(m),nonzeros(nz),xs(mn),up(mn),addobj,scobj,obj(n), + x dspr(mn),dsup(mn),bounds(mn),duinf(mn),dinf +c + integer*4 i,j,pnt1,pnt2 + real*8 sol +c +c --------------------------------------------------------------------------- +c + fxp=0 + fxd=0 + fxu=0 + do i=1,n + if((vcstat(i).gt.-2).and.(vartyp(i).ne.0))then + if((xs(i).lt.tfixvar).or. + x ((vartyp(i).lt.0).and.(up(i).lt.tfixvar)))then + fixn=fixn+1 + fxp=fxp+1 + vcstat(i)=-2 + if(xs(i).lt.tfixvar)then + xs(i)=0.0d+0 + up(i)=bounds(i) + else + xs(i)=bounds(i) + up(i)=0.0d+0 + endif + sol=xs(i) + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + rhs(rowidx(j)-n)=rhs(rowidx(j)-n)-sol*nonzeros(j) + enddo + addobj=addobj+scobj*obj(i)*sol + endif + if (dspr(i).lt.tfixslack)then + fxd=fxd+1 + duinf(i)=duinf(i)-slklim+dspr(i) + dspr(i)=slklim + endif + endif + enddo +c +c Release upper bounds +c + do i=1,mn + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if((vcstat(i).gt.-2).and.(j.lt.0))then + if(dsup(i).lt.slklim)then + fxu=fxu+1 + duinf(i)=duinf(i)-dsup(i) + dsup(i)=0 + if(i.le.n)then + vartyp(i)=-j + else + slktyp(i-n)=-j + endif + endif + endif + enddo +c +c Relax rows +c + do i=1,m + j=i+n + if((vcstat(j).gt.-2).and.(slktyp(i).gt.0))then + if(dspr(j).lt.tfixslack)then + fxd=fxd+1 + dropn=dropn+1 + vcstat(j)=-2 + endif + endif + enddo +c +c Compute new dual infeasibility +c + if((fxd.gt.0).or.(fxu.gt.0))then + dinf=0.0d+0 + do i=1,mn + if(vcstat(i).gt.-2)then + if(abs(duinf(i)).gt.dinf)dinf=abs(duinf(i)) + endif + enddo + endif +c + return + end +c +c =========================================================================== +c Modifying the primal and dual variables +c =========================================================================== +c + subroutine pdmodi(xs,dspr,vcstat, + x vartyp,slktyp,gap,pobj,dobj,prinf,duinf,upinf, + x colpnt,rowidx,rownz,pinf,uinf,dinf) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/compl/ climit,ccorr + real*8 climit,ccorr +c + integer*4 vcstat(mn),vartyp(n),slktyp(m),colpnt(n1),rowidx(nz) + real*8 xs(mn),dspr(mn),gap,pobj,dobj, + x prinf(m),upinf(mn),duinf(mn),rownz(nz),pinf,uinf,dinf +c + integer*4 i,j,k,prm,dum,upm,pnt1,pnt2 + real*8 sp,sd,sol,s +c +c -------------------------------------------------------------------------- +c + prm=0 + dum=0 + upm=0 + sd=gap + sp=abs(pobj-dobj)/(abs(pobj)+1.0d0) + sd=sd*ccorr + if(sd.gt.climit)sd=climit + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.ne.0)then + sp=xs(i)*dspr(i) + if(sp.lt.sd)then + if(xs(i).gt.dspr(i))then + sol=sd/xs(i) + duinf(i)=duinf(i)+dspr(i)-sol + dspr(i)=sol + dum=dum+1 + else + sol=sd/dspr(i) + s=xs(i)-sol + xs(i)=sol + if(j.lt.0)then + upinf(i)=upinf(i)+s + upm=upm+1 + endif + if(i.le.n)then + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do k=pnt1,pnt2 + prinf(rowidx(k)-n)=prinf(rowidx(k)-n)+s*rownz(k) + enddo + else + prinf(i-n)=prinf(i-n)-s + endif + prm=prm+1 + endif + endif +ccc +ccc It's totally wrong! Do not modify upper bounds ! +ccc +ccc if(j.lt.0)then +ccc sp=up(i)*dsup(i) +ccc if(sp.lt.sd)then +ccc if(up(i).gt.dsup(i))then +ccc sol=sd/up(i) +ccc duinf(i)=duinf(i)-dsup(i)+sol +ccc dsup(i)=sol +ccc dum=dum+1 +ccc else +ccc sol=sd/dsup(i) +ccc upinf(i)=upinf(i)+up(i)-sol +ccc up(i)=sol +ccc upm=upm+1 +ccc endif +ccc endif +ccc endif + endif + endif + enddo +c +c Correct infeas. norm +c + if(prm.gt.0)then + pinf=0.0d+0 + do i=1,m + if(vcstat(i+n).gt.-2)then + if(abs(prinf(i)).gt.pinf)pinf=abs(prinf(i)) + else + prinf(i)=0.0d+0 + endif + enddo + endif + if(upm.gt.0)then + uinf=0.0d+0 + do i=1,mn + if(vcstat(i).gt.-2)then + if(abs(upinf(i)).gt.uinf)uinf=abs(upinf(i)) + else + upinf(i)=0.0d+0 + endif + enddo + endif + if(dum.gt.0)then + dinf=0.0d+0 + do i=1,mn + if(vcstat(i).gt.-2)then + if(abs(duinf(i)).gt.dinf)dinf=abs(duinf(i)) + else + duinf(i)=0.0d+0 + endif + enddo + endif + return + end +c +c =========================================================================== +c Scaling of free variables : "Average" of basics * scfree +c Correcting : "Average" of basics * varadd +c +c =========================================================================== +c + subroutine cdiag(xs,up,dspr,dsup,vartyp,slktyp,vcstat,diag, + x odiag) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/mscal/ varadd,slkadd,scfree + real*8 varadd,slkadd,scfree +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c + integer*4 vartyp(n),slktyp(m),vcstat(mn) + real*8 xs(mn),up(mn),dspr(mn),dsup(mn),diag(mn),odiag(mn) +c + integer*4 i,j + real*8 sol,sn,sm,mins +c +c --------------------------------------------------------------------------- +c + sn=0.0d+0 + mins=1.0d+0 + j=0 + do i=1,n + sol=0.0d+0 + if((vcstat(i).gt.-2).and.(vartyp(i).ne.0))then + if(vartyp(i).lt.0)then + sol=dspr(i)/xs(i)+dsup(i)/up(i) + else + sol=dspr(i)/xs(i) + endif +c +c Compute average on "basic" variables +c + if(mins.gt.sol)mins=sol + if(vcstat(i).gt.0)then + j=j+1 + sn=sn+log(sol) + endif + endif + diag(i)=sol + odiag(i)=sol + enddo +c +c Compute geometric mean of the "basics" +c + if(j.eq.0)j=1 + sol=exp(sn/dble(j)) +c +c Set scale parameter for free variables +c + if(abs(scfree).lt.tzer)then + sn=0.0d+0 + else if(scfree.lt.0.0d+0)then + sn=-scfree + else + sn=max(sol*scfree,mins) + endif +c +c Set regularization parameter +c + if(abs(varadd).lt.tzer)then + sm=0.0d+0 + else if(varadd.lt.0.0d+0)then + sm=-varadd + else + sm=sol*varadd + endif +c +c Second pass: Set free variables and regularize +c + do i=1,n + if(vcstat(i).gt.-2)then + if(vartyp(i).eq.0)then + sol=sn + else + sol=diag(i) + endif +ccc if(sol.lt.sm*sm)sol=sm*sqrt(sol) + if(sol.lt.sm)sol=sm*sqrt(sol/sm) + diag(i)=-sol + odiag(i)=-sol + endif + enddo +c +c +c + j=0 + sn=0.0d+0 + do i=1,m + sol=0.0d+0 + if(vcstat(i+n).gt.-2)then + if(slktyp(i).eq.0)then + sol=0.0d+0 + else + if(slktyp(i).lt.0)then + sol=1.0d+0/(dspr(i+n)/xs(i+n)+dsup(i+n)/up(i+n))+0.0d+0 + else + sol=xs(i+n)/dspr(i+n) + endif + if(vcstat(i+n).gt.0)then + j=j+1 + sn=sn+log(sol) + endif + endif + endif + diag(i+n)=sol + odiag(i+n)=sol + enddo + + if(j.eq.0)j=1 + if(abs(slkadd).lt.tzer)then + sm=0.0d+0 + else if(slkadd.lt.0.0d+0)then + sm=-slkadd + else + sm=exp(sn/dble(j))*slkadd + endif + + if(sm.gt.tzer)then + do i=1,m + if(vcstat(i+n).gt.-2)then + sol=diag(i+n) +ccc if(sol.gt.sm*sm)sol=sm*sqrt(sol) + if(sol.gt.sm)sol=sm*sqrt(sol/sm) + diag(i+n)=sol + odiag(i+n)=sol + endif + enddo + endif + return + end +c +c =========================================================================== +c Multi predictor-corrector direction (Merothra) +c +c =========================================================================== +c + subroutine cpdpcd(xs,up,dspr,dsup,prinf,duinf,upinf, + x dxsn,ddvn,ddsprn,ddsupn,dxs,ddv,ddspr,ddsup,bounds, + x ecolpnt,count,pivots,vcstat,diag,odiag,rowidx,nonzeros, + x colpnt,vartyp,slktyp,barpar,corr,prstpl,dustpl,barn,cgap) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + + common/numer/ tplus,tzer + real*8 tplus,tzer + + common/predp/ ccstop,barset,bargrw,barmin,mincor,maxcor,inibar + real*8 ccstop,barset,bargrw,barmin + integer*4 mincor,maxcor,inibar +c + integer*4 ecolpnt(mn),count(mn),vcstat(mn),rowidx(cfree), + x pivots(mn),colpnt(n1),vartyp(n),slktyp(m),corr,barn + real*8 xs(mn),up(mn),dspr(mn),dsup(mn),prinf(m),duinf(mn), + x upinf(mn),dxsn(mn),ddvn(m),ddsprn(mn),ddsupn(mn), + x dxs(mn),ddv(m),ddspr(mn),ddsup(mn),bounds(mn), + x diag(mn),odiag(mn),nonzeros(cfree),barpar,prstpl,dustpl,cgap +c + integer*4 i,j,cr,mxcor + real*8 sol,sb,ogap,ngap,obpar,ostp,ostd +c +c --------------------------------------------------------------------------- +c +c Compute ogap +c + ogap=cgap + if(barpar.lt.tzer)barpar=ogap/dble(barn)*barset + obpar=barpar + if(inibar.le.0)then + barpar=0.0d+0 + else + barpar=ogap/dble(barn)*barset + if(barpar.gt.obpar*bargrw)barpar=obpar*bargrw + endif +c + cr=0 + mxcor=maxcor +c +c Initialize : Reset +c + do i=1,m + ddv(i)=0.0d+0 + enddo + do i=1,mn + dxs(i)=0.0d+0 + ddspr(i)=0.0d+0 + ddsup(i)=0.0d+0 + enddo +c +c Affine scaling / primal-dual direction +c + do i=1,n + sol=0.0d+0 + if(vcstat(i).gt.-2)then + if(vartyp(i))10,11,12 + 10 sol=duinf(i)+dspr(i)-barpar/xs(i) + x -dsup(i)+(barpar-dsup(i)*upinf(i))/up(i) + goto 15 + 11 sol=duinf(i) + goto 15 + 12 sol=duinf(i)+dspr(i)-barpar/xs(i) + endif + 15 dxsn(i)=sol + enddo +c + do i=1,m + j=i+n + sol=0.0d+0 + if(vcstat(j).gt.-2)then + if(slktyp(i))20,21,22 + 20 sol=-(duinf(j)+dspr(j)-barpar/xs(j) + x -dsup(j)+(barpar-dsup(j)*upinf(j))/up(j))*odiag(j) + goto 25 + 21 sol=0.0d+0 + goto 25 + 22 sol=-(duinf(j)+dspr(j)-barpar/xs(j))*odiag(j) + endif + 25 dxsn(j)=prinf(i)+sol + enddo +c +c Solve the augmented system +c + if(cr.lt.mincor)then + call augftr(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,dxsn) + call augbtr(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,dxsn) + else + call citref(diag,odiag,pivots,rowidx,nonzeros,colpnt, + x ecolpnt,count,vcstat,dxsn,ddsprn,ddsupn,upinf, + x bounds,xs,up,vartyp,slktyp) + endif +c +c Primal and dual variables +c Primal slacks : ds=D_s^{-1}*(b_s+dy) +c + do i=1,m + j=i+n + if(vcstat(j).gt.-2)then + ddvn(i)=dxsn(j) + if(slktyp(i).ne.0)then + if(slktyp(i).gt.0)then + sb=duinf(j)+dspr(j)-barpar/xs(j) + else + sb=duinf(j)+dspr(j)-barpar/xs(j) + x -dsup(j)+(barpar-dsup(j)*upinf(j))/up(j) + endif + dxsn(j)=-odiag(j)*(ddvn(i)+sb) + endif + endif + enddo +c +c Primal upper bounds, dual slacks +c dz=-Z+X^{-1}(mu -dx*dz -Z*dx) +c + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.lt.0)then + ddsupn(i)=-dsup(i)+(barpar-dsup(i)*(upinf(i)-dxsn(i)))/up(i) + endif + if(j.ne.0)then + ddsprn(i)=-dspr(i)+(barpar-dspr(i)*dxsn(i))/xs(i) + else if(i.le.n)then + ddsprn(i)=-dspr(i) + endif + endif + enddo +c +c Compute primal and dual steplengths +c + call cstpln(prstpl,xs,dxsn,up,upinf, + x dustpl,dspr,ddsprn,dsup,ddsupn,vartyp,slktyp,vcstat) +c +c Estimate basic variables vcstat(i)=1 for basic, 0 for nonbasic +c + do i=1,n + if((vcstat(i).gt.-2).and.(vartyp(i).ne.0))then + if(abs(ddsprn(i))*xs(i).gt.abs(dxsn(i))*dspr(i))then + vcstat(i)=1 + else + vcstat(i)=0 + endif + endif + enddo + do i=1,m + if((vcstat(i+n).gt.-2).and.(slktyp(i).ne.0))then + if(abs(ddsprn(i+n))*xs(i+n).gt.abs(dxsn(i+n))*dspr(i+n))then + vcstat(i+n)=1 + else + vcstat(i+n)=0 + endif + endif + enddo +c +c Compute ngap +c + ngap=0.0d+0 + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.ne.0)then + ngap=ngap+(xs(i)+prstpl*dxsn(i))*(dspr(i)+dustpl*ddsprn(i)) + if(j.lt.0)then + ngap=ngap+(up(i)+prstpl*(upinf(i)-dxsn(i)))* + x (dsup(i)+dustpl*ddsupn(i)) + endif + endif + endif + enddo + cgap=ngap/dble(barn) + ostp=prstpl + ostd=dustpl + do i=1,mn + dxs(i)=dxsn(i) + ddspr(i)=ddsprn(i) + ddsup(i)=ddsupn(i) + enddo + do i=1,m + ddv(i)=ddvn(i) + enddo +c +c Compute barrier +c + barpar=ngap*ngap*ngap/(ogap*ogap*dble(barn)) + if(barpar.gt.ogap/dble(barn)*barset)barpar=ogap/dble(barn)*barset + if(barpar.gt.obpar*bargrw)barpar=obpar*bargrw + if(barpar.lt.barmin)barpar=0.0d+0 + if(mxcor.le.0)goto 999 +c +c Higher order predictor-corrector direction +c + 50 cr=cr+1 + do i=1,n + sol=0.0d+0 + if(vcstat(i).gt.-2)then + if(vartyp(i))30,31,32 + 30 sol=duinf(i)+dspr(i)+(ddspr(i)*dxs(i)-barpar)/xs(i) + x -dsup(i)-(ddsup(i)*(upinf(i)-dxs(i))-barpar+dsup(i)* + x upinf(i))/up(i) + goto 35 + 31 sol=duinf(i) + goto 35 + 32 sol=duinf(i)+dspr(i)+(ddspr(i)*dxs(i)-barpar)/xs(i) + endif + 35 dxsn(i)=sol + enddo +c + do i=1,m + j=i+n + sol=0.0d+0 + if(vcstat(j).gt.-2)then + if(slktyp(i))40,41,42 + 40 sol=-(duinf(j)+dspr(j)+(ddspr(j)*dxs(j)-barpar)/xs(j) + x -dsup(j)-(ddsup(j)*(upinf(j)-dxs(j))-barpar+dsup(j)* + x upinf(j))/up(j))*odiag(j) + goto 45 + 41 sol=0.0d+0 + goto 45 + 42 sol=-(duinf(j)+dspr(j)+(ddspr(j)*dxs(j)-barpar)/xs(j))*odiag(j) + endif + 45 dxsn(j)=prinf(i)+sol + enddo +c +c Solve the augmented system +c + if(cr.lt.mincor)then + call augftr(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,dxsn) + call augbtr(ecolpnt,vcstat,rowidx,pivots,count,nonzeros, + x diag,dxsn) + else + call citref(diag,odiag,pivots,rowidx,nonzeros,colpnt, + x ecolpnt,count,vcstat,dxsn,ddsprn,ddsupn,upinf, + x bounds,xs,up,vartyp,slktyp) + endif +c +c Primal and dual variables +c Primal slacks : ds=D_s^{-1}*(b_s+dy) +c + do i=1,m + j=i+n + if(vcstat(j).gt.-2)then + ddvn(i)=dxsn(j) + if(slktyp(i).ne.0)then + if(slktyp(i).gt.0)then + sb=duinf(j)+dspr(j)+(ddspr(j)*dxs(j)-barpar)/xs(j) + else + sb=duinf(j)+dspr(j)+(ddspr(j)*dxs(j)-barpar)/xs(j) + x -dsup(j)-(ddsup(j)*(upinf(j)-dxs(j))-barpar+dsup(j)* + x upinf(j))/up(j) + endif + dxsn(j)=-odiag(j)*(ddvn(i)+sb) + endif + endif + enddo +c +c Primal upper bounds, dual slacks +c dz=-Z+X^{-1}(mu -dx*dz -Z*dx) +c + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.lt.0)then + ddsupn(i)= + x -dsup(i)+(barpar-ddsup(i)*(upinf(i)-dxs(i)) + x -dsup(i)*(upinf(i)-dxsn(i)))/up(i) + endif + if(j.ne.0)then + ddsprn(i)= + x -dspr(i)+(barpar-ddspr(i)*dxs(i)-dspr(i)*dxsn(i))/xs(i) + else if(i.le.n)then + ddsprn(i)=-dspr(i) + endif + endif + enddo +c +c Compute primal and dual steplengths +c + call cstpln(prstpl,xs,dxsn,up,upinf,dustpl,dspr, + x ddsprn,dsup,ddsupn,vartyp,slktyp,vcstat) +c +c Compute ngap +c + ngap=0.0d+0 + do i=1,mn + if(vcstat(i).gt.-2)then + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.ne.0)then + ngap=ngap+(xs(i)+prstpl*dxsn(i))*(dspr(i)+dustpl*ddsprn(i)) + if(j.lt.0)then + ngap=ngap+(up(i)+prstpl*(upinf(i)-dxsn(i)))* + x (dsup(i)+dustpl*ddsupn(i)) + endif + endif + endif + enddo +c +c Check corrections criteria +c + if(cr.gt.mincor)then + if(min(prstpl,dustpl).lt.ccstop*min(ostp,ostd))then + if(min(prstpl,dustpl).lt.min(ostp,ostd))then + prstpl=ostp + dustpl=ostd + cr=cr-1 + goto 999 + else + mxcor=cr + endif + endif + endif +c +c Continue correcting, change the actual search direction +c + cgap=ngap/dble(barn) + ostp=prstpl + ostd=dustpl + do i=1,mn + dxs(i)=dxsn(i) + ddspr(i)=ddsprn(i) + ddsup(i)=ddsupn(i) + enddo + do i=1,m + ddv(i)=ddvn(i) + enddo + if(cr.ge.mxcor)goto 999 + goto 50 +c +c End of the correction loop, save the number of the corrections +c + 999 corr=cr + return + end +c +c ============================================================================ +c Multi-centrality corrections +c +c =========================================================================== +c + subroutine cpdccd(xs,up,dspr,dsup,upinf, + x dxsn,ddvn,ddsprn,ddsupn,dxs,ddv,ddspr,ddsup,bounds, + x ecolpnt,count,pivots,vcstat,diag,odiag,rowidx,nonzeros, + x colpnt,vartyp,slktyp,barpar,corr,prstpl,dustpl) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + + common/numer/ tplus,tzer + real*8 tplus,tzer + + common/predc/ target,tsmall,tlarge,center,corstp,mincc,maxcc + real*8 target,tsmall,tlarge,center,corstp + integer*4 mincc,maxcc +c + integer*4 ecolpnt(mn),count(mn),vcstat(mn),rowidx(cfree), + x pivots(mn),colpnt(n1),vartyp(n),slktyp(m),corr + real*8 xs(mn),up(mn),dspr(mn),dsup(mn), + x upinf(mn),dxsn(mn),ddvn(m),ddsprn(mn),ddsupn(mn), + x dxs(mn),ddv(m),ddspr(mn),ddsup(mn),bounds(mn), + x diag(mn),odiag(mn),nonzeros(cfree),barpar,prstpl,dustpl +c + integer*4 i,j,cr,maxccx + real*8 s,ss,ostp,ostd,prs,dus,dp +c +c --------------------------------------------------------------------------- + maxccx=maxcc + cr=0 + ostp=prstpl + ostd=dustpl + if(maxcc.le.0)goto 999 + cr=1 +c +c Define Target +c + 1 prs=prstpl*(target+1.0d+0)+target + dus=dustpl*(target+1.0d+0)+target + if (prs.ge.1.0d+0)prs=1.0d+0 + if (dus.ge.1.0d+0)dus=1.0d+0 + + do 10 j=1,n + if(vcstat(j).le.-2)then + dxsn(j)=0.0d+0 + goto 10 + endif + if(vartyp(j).eq.0)then + dxsn(j)=0.0d+0 + goto 10 + endif + dp=(xs(j)+prs*dxs(j))*(dspr(j)+dus*ddspr(j)) + if (dp.le.tsmall*barpar)then + s=barpar-dp + else if(dp.ge.tlarge*barpar)then + s=-center*barpar + else + s=0.0d+0 + endif + + if(vartyp(j).gt.0)then + dxsn(j)=-s/xs(j) + goto 10 + endif + + dp=(up(j)+prs*(upinf(j)-dxs(j)))*(dsup(j)+dus*ddsup(j)) + if (dp.le.tsmall*barpar)then + ss=barpar-dp + else if(dp.ge.tlarge*barpar)then + ss=-center*barpar + else + ss=0.0d+0 + endif + dxsn(j)=-s/xs(j)+ss/up(j) + 10 continue +c + do 20 i=1,m + j=i+n + if(vcstat(j).le.-2)then + dxsn(j)=0.0d+0 + goto 20 + endif + if(slktyp(i).eq.0)then + dxsn(j)=0.0d+0 + goto 20 + endif +c +c Bounded variable +c + dp=(xs(j)+prs*dxs(j))*(dspr(j)+dus*ddspr(j)) + if (dp.le.tsmall*barpar)then + s=barpar-dp + else if (dp.ge.tlarge*barpar)then + s=-center*barpar + else + s=0.0d+0 + endif + if(slktyp(i).gt.0)then + dxsn(j)=s/xs(j)*odiag(j) + goto 20 + endif +c +c upper bounded variable +c + dp=(up(j)+prs*(upinf(j)-dxs(j)))*(dsup(j)+dus*ddsup(j)) + if (dp.le.tsmall*barpar)then + ss=barpar-dp + else if(dp.ge.tlarge*barpar)then + ss=-center*barpar + else + ss=0.0d+0 + endif + dxsn(j)=(s/xs(j)-ss/up(j))*odiag(j) + 20 continue +c +c solve the augmented system +c + call citref(diag,odiag,pivots,rowidx,nonzeros,colpnt, + x ecolpnt,count,vcstat,dxsn,ddsprn,ddsupn,upinf, + x bounds,xs,up,vartyp,slktyp) +c +c Primal and dual variables +c + do 30 i=1,m + j=i+n + if(vcstat(j).le.-2)goto 30 + ddvn(i)=ddv(i)+dxsn(j) + if(slktyp(i).eq.0)goto 30 + dp=(xs(j)+prs*dxs(j))*(dspr(j)+dus*ddspr(j)) + if (dp.le.tsmall*barpar)then + s=barpar-dp + else if (dp.ge.tlarge*barpar)then + s=-center*barpar + else + s=0.0d+0 + endif + if(slktyp(i).gt.0)then + dxsn(j)=-odiag(j)*(dxsn(j)-s/xs(j)) + goto 30 + endif + dp=(up(j)+prs*(upinf(j)-dxs(j)))*(dsup(j)+dus*ddsup(j)) + if (dp.le.tsmall*barpar)then + ss=barpar-dp + else if(dp.ge.tlarge*barpar)then + ss=-center*barpar + else + ss=0.0d+0 + endif + dxsn(j)=-odiag(j)*(dxsn(j)-s/xs(j)+ss/up(j)) + 30 continue +c +c Primal upper bounds, dual slacks +c + do 40 i=1,mn + if(vcstat(i).le.-2)goto 40 + if(i.le.n)then + j=vartyp(i) + else + j=slktyp(i-n) + endif + if(j.eq.0)then + if(i.le.n)then + ddsprn(i)=ddsprn(i)+ddspr(i) + endif + goto 45 + endif + dp=(xs(i)+prs*dxs(i))*(dspr(i)+dus*ddspr(i)) + if (dp.le.tsmall*barpar)then + s=barpar-dp + else if(dp.ge.tlarge*barpar)then + s=-center*barpar + else + s=0.0d+0 + endif + ddsprn(i)=(s-dspr(i)*dxsn(i))/xs(i)+ddspr(i) + if(j.lt.0)then + dp=(up(i)+prs*(upinf(i)-dxs(i)))*(dsup(i)+dus*ddsup(i)) + if (dp.le.tsmall*barpar)then + ss=barpar-dp + else if(dp.ge.tlarge*barpar)then + ss=-center*barpar + else + ss=0.0d+0 + endif + ddsupn(i)=(ss+dsup(i)*dxsn(i))/up(i)+ddsup(i) + endif + 45 dxsn(i)=dxsn(i)+dxs(i) + 40 continue +c +c Compute primal and dual steplengths +c + call cstpln(prstpl,xs,dxsn,up,upinf, + x dustpl,dspr,ddsprn,dsup,ddsupn,vartyp,slktyp,vcstat) +c +c Check corrections criteria +c + if(cr.gt.mincc)then + if(min(prstpl,dustpl).lt.corstp*min(ostp,ostd))then + if(min(prstpl,dustpl).lt.min(ostp,ostd))then + prstpl=ostp + dustpl=ostd + cr=cr-1 + goto 999 + else + maxccx=cr + endif + endif + endif +c +c Continue correcting, change the actual search direction +c + ostp=prstpl + ostd=dustpl + do i=1,mn + dxs(i)=dxsn(i) + ddspr(i)=ddsprn(i) + ddsup(i)=ddsupn(i) + enddo + do i=1,m + ddv(i)=ddvn(i) + enddo + if(cr.lt.maxccx)then + cr=cr+1 + goto 1 + endif +c +c End of the correction loop, save the number of the corrections +c + 999 corr=cr + return + end +c +c ============================================================================ +c +c Prelev: 1 : rowsng +c 2 : colsng +c 4 : rowact +c 8 : chepdu +c 16 : duchek +c 32 : bndchk +c 64 : splchk +c 128 : freagr +c 256 : sparse +c 512 : xduchk +c +c ======================================================================== +c + subroutine presol(colpnt,colidx,colnzs,rowidx,rownzs, + x collst,rowlst,colmrk,rowmrk,colsta,rowsta, + x colbeg,colend,rowbeg,rowend, + x vartyp,pmaxr,pminr,pmbig,ppbig, + x upperb,lowerb,upslck,loslck,rhs,obj,prehis,prelen, + x addobj,big,list,mrk, + x dulo,duup,dmaxc,dminc,dmbig,dpbig,prelev,code) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 colpnt(n1),colidx(nz),rowidx(nz), + x collst(n),rowlst(m),pmbig(m),ppbig(m), + x colbeg(n),colend(n),rowbeg(m),rowend(m), + x colmrk(n),rowmrk(m),colsta(n),rowsta(m), + x list(mn),mrk(mn),prehis(mn),prelen,prelev,code, + x dpbig(n),dmbig(n),vartyp(n) + real*8 colnzs(nz),rownzs(nz),pmaxr(m),pminr(m),addobj, + x upperb(n),lowerb(n),upslck(m),loslck(m),rhs(m),obj(n), + x dulo(m),duup(m),dmaxc(n),dminc(n),big +c + integer*4 i,j,k,p,o,pnt1,pnt2,pass,cnum,procn,rnum,coln,rown + real*8 sol,up,lo,tfeas,zero,lbig,bigbou,dbigbo + integer*4 dusrch,bndsrc,bndchg + character*99 buff +C CMSSW: Explicit initialization needed + pnt1=0 + pnt2=0 +c +c initialize : clean up the matrix and set-up row-wise structure +c + tfeas = 1.0d-08 + zero = 1.0d-15 + dusrch = 10 + bndsrc = 5 + bndchg = 6 + bigbou = 1.0d+5 + dbigbo = 1.0d+5 +c + lbig = big*0.9d+0 + pass=0 + rown=0 + coln=0 + cnum=0 + rnum=0 + do i=1,mn + mrk(i)=-1 + enddo + do i=1,m + pmaxr(i)=0.0d+0 + pminr(i)=0.0d+0 + pmbig(i)=0 + ppbig(i)=0 + rowend(i)=0 + if(rowsta(i).gt.-2)then + rown=rown+1 + rowlst(rown)=i + rowmrk(i)=0 + endif + enddo + do i=1,n + dmaxc(i)=0.0d+0 + dminc(i)=0.0d+0 + dmbig(i)=0 + dpbig(i)=0 + if(colsta(i).gt.-2)then + coln=coln+1 + collst(coln)=i + colmrk(i)=0 + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + p=pnt2 + do j=pnt2,pnt1,-1 + if((rowsta(colidx(j)).le.-2).or.(abs(colnzs(j)).lt.zero))then + o=colidx(j) + sol=colnzs(j) + colidx(j)=colidx(p) + colnzs(j)=colnzs(p) + colidx(p)=o + colnzs(p)=sol + p=p-1 + else + rowend(colidx(j))=rowend(colidx(j))+1 + endif + enddo + colbeg(i)=pnt1 + colend(i)=p + endif + enddo + pnt1=1 + do j=1,rown + i=rowlst(j) + rowbeg(i)=pnt1 + pnt1=pnt1+rowend(i) + rowend(i)=rowbeg(i)-1 + enddo + do k=1,coln + i=collst(k) + pnt1=colbeg(i) + pnt2=colend(i) + do j=pnt1,pnt2 + rowend(colidx(j))=rowend(colidx(j))+1 + rowidx(rowend(colidx(j)))=i + rownzs(rowend(colidx(j)))=colnzs(j) + enddo + enddo +c +c Initialize the minimum and maximum row activity +c + sol=0.9d+0*big + o=1 + do j=1,coln + i=collst(j) + pnt1=colbeg(i) + pnt2=colend(i) + up=upperb(i) + lo=lowerb(i) + call chgmxm(pnt1,pnt2,up,lo,colidx,colnzs, + x ppbig,pmaxr,pmbig,pminr,sol,o,m) + enddo +c +c Start Presolve sequence: Step 1 : ROW SINGLETONS +c + 10 procn=1 + call setlst(n,m,nz,rown,rowlst,rowmrk,coln,collst,colmrk, + x procn,rowsta,colsta,rowbeg,rowend,cnum,list,mrk,pass, + x colbeg,colend,colidx) + if(coln+rown.eq.0)goto 50 + if((iand(prelev,1).gt.0).and.(cnum.gt.0))then + call rowsng(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upperb,lowerb,upslck,loslck, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk,rown,rowlst,rowmrk, + x cnum,list,mrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x lbig,tfeas,zero,code) + if(code.gt.0)goto 100 + endif +c +c Step 2 : COLUMN SINGLETONS +c + procn=2 + call setlst(m,n,nz,coln,collst,colmrk,rown,rowlst,rowmrk, + x procn,colsta,rowsta,colbeg,colend,cnum,list,mrk,pass, + x rowbeg,rowend,rowidx) + if(coln+rown.eq.0)goto 50 + if((iand(prelev,2).gt.0).and.(cnum.gt.0))then + call colsng(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upperb,lowerb,upslck,loslck, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk, + x cnum,list,mrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x lbig,tfeas,zero,code) + if(code.gt.0)goto 100 + endif +c +c Step 3 : ROW ACTIVITY CHECK +c + procn=3 + call setlst(n,m,nz,rown,rowlst,rowmrk,coln,collst,colmrk, + x procn,rowsta,colsta,rowbeg,rowend,cnum,list,mrk,pass, + x colbeg,colend,colidx) + if(coln+rown.eq.0)goto 50 + if((iand(prelev,4).gt.0).and.(cnum.gt.0))then + call rowact(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upperb,lowerb,upslck,loslck, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk,rown,rowlst,rowmrk, + x cnum,list,mrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x lbig,tfeas,code) + if(code.gt.0)goto 100 + endif +c +c Step 4 : CHEAP DUAL TEST +c + procn=4 + call setlst(m,n,nz,coln,collst,colmrk,rown,rowlst,rowmrk, + x procn,colsta,rowsta,colbeg,colend,cnum,list,mrk,pass, + x rowbeg,rowend,rowidx) + if(coln+rown.eq.0)goto 50 + if((iand(prelev,8).gt.0).and.(cnum.gt.0))then + call chepdu(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upperb,lowerb,upslck,loslck, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk,rown,rowlst,rowmrk, + x cnum,list,mrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x lbig,zero,code) + if(code.gt.0)goto 100 + endif +c +c Step 5 : USUAL DUAL TEST +c + procn=5 + call setlst(n,m,nz,rown,rowlst,rowmrk,coln,collst,colmrk, + x procn,rowsta,colsta,rowbeg,rowend,rnum,list(n+1),mrk(n+1),pass, + x colbeg,colend,colidx) +c +c Remove zero entries at the first loop from the main list +c + if (pass.eq.5)then + k=1 + 5 if(k.le.coln)then + if(colmrk(collst(k)).eq.0)then + colmrk(collst(k))=-1 + collst(k)=collst(coln) + coln=coln-1 + else + k=k+1 + endif + goto 5 + endif + k=1 + 20 if(k.le.rown)then + if(rowmrk(rowlst(k)).eq.0)then + rowmrk(rowlst(k))=-1 + rowlst(k)=rowlst(rown) + rown=rown-1 + else + k=k+1 + endif + goto 20 + endif + endif +c + if((iand(prelev,16).gt.0).and.(cnum+rnum.gt.0))then + call duchek(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upperb,lowerb,upslck,loslck, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk,rown,rowlst,rowmrk, + x cnum,list,mrk,rnum,list(n+1),mrk(n+1),procn, + x ppbig,pmaxr,pmbig,pminr, +C CMSSW: Prevent REAL*8 reusage warning (note that this is cured by +C simply using the matching temporary array already available) +C Was: dulo,duup,dmaxc,dminc,dpbig,dmbig, + x dulo,duup,dpbig,dmbig,dmaxc,dminc, + x big,lbig,tfeas,zero,dbigbo,dusrch,code,prelev) + if(code.gt.0)goto 100 + endif + goto 10 +c +c Bound check +c + 50 procn=6 + if(iand(prelev,32).gt.0)then + call bndchk(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upperb,lowerb,upslck,loslck, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x cnum,list,mrk,procn,dmaxc,dminc, + x ppbig,pmaxr,pmbig,pminr,dpbig,dmbig, + x big,lbig,tfeas,bndsrc,bndchg,bigbou,code) + if(code.gt.0)goto 100 + endif +c +c Finding splitted free variables +c + procn=7 + if(iand(prelev,64).gt.0)then + call coldbl(n,m,mn,nz,colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs,upperb,lowerb,obj,colsta, + x prelen,prehis,procn,list,dmaxc,vartyp,big,lbig,tfeas,zero) + if(code.gt.0)goto 100 + endif + goto 999 +c +c Infeasibility detected +c + 100 if(code.eq.3)then + write(buff,'(1x,a)')'Dual infeasibility detected in presolve' + else + write(buff,'(1x,a)')'Primal infeasibility detected in presolve' + endif + call mprnt(buff) + if (procn.eq.1)then + write(buff,'(1x,a)')'Presolve process: Row singleton check' + else if (procn.eq.2)then + write(buff,'(1x,a)')'Presolve process: Column singleton check' + else if (procn.eq.3)then + write(buff,'(1x,a)')'Presolve process: Row activity check' + else if (procn.eq.4)then + write(buff,'(1x,a)')'Presolve process: Cheap dual check' + else if (procn.eq.5)then + write(buff,'(1x,a)')'Presolve process: Dual check' + else if (procn.eq.6)then + write(buff,'(1x,a)')'Presolve process: Bound check' + else if (procn.eq.7)then + write(buff,'(1x,a)')'Presolve process: Splitcol check' + endif + call mprnt(buff) +c + 999 return + end +c +c ============================================================================ +c + subroutine chgmxm(pnt1,pnt2,upper,lower,idx,nonzrs, + x pbig,maxr,mbig,minr,lbig,dir,siz) +C + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c +c This subroutine changes/updates the minimum/maximum row activity +c values +c + integer*4 siz,pnt1,pnt2,idx(nz),pbig(siz),mbig(siz),dir + real*8 upper,lower,nonzrs(nz),maxr(siz),minr(siz),lbig +c + integer*4 j,k + real*8 s +c + do j=pnt1,pnt2 + k=idx(j) + s=nonzrs(j) + if(s.gt.0d+0)then + if(upper.ge.lbig)then + pbig(k)=pbig(k)+dir + else + maxr(k)=maxr(k)+upper*s*dble(dir) + endif + if(lower.le.-lbig)then + mbig(k)=mbig(k)+dir + else + minr(k)=minr(k)+lower*s*dble(dir) + endif + else + if(upper.ge.lbig)then + mbig(k)=mbig(k)+dir + else + minr(k)=minr(k)+upper*s*dble(dir) + endif + if(lower.le.-lbig)then + pbig(k)=pbig(k)+dir + else + maxr(k)=maxr(k)+lower*s*dble(dir) + endif + endif + enddo + return + end +c +c ============================================================================ +c + subroutine modmxm(nz,pnt1,pnt2,oldb,newb,rowidx,nonzeros, + x pbig,maxr,mbig,minr,lbig,dir,siz) +c +c This subroutine modifies the row (column) activity values +c from an old bound (oldb) to a new one (newb) +c dir= 1 update on upper bound +c dir=-1 update on lower bound +c + integer*4 nz,siz,pnt1,pnt2,rowidx(nz),pbig(siz),mbig(siz),dir + real*8 oldb,newb,nonzeros(nz),maxr(siz),minr(siz),lbig +c + integer*4 f,j,k + real*8 s,diff +c + f=0 + diff=newb-oldb + if(abs(oldb).gt.lbig)then + diff=newb + f=1 + if(oldb.gt.0.0d+0)then + dir=1 + else + dir=-1 + endif + do j=pnt1,pnt2 + k=rowidx(j) + if((nonzeros(j)*dble(dir)).gt.0.0d+0)then + pbig(k)=pbig(k)-1 + else + mbig(k)=mbig(k)-1 + endif + enddo + endif + if(abs(newb).gt.lbig)then + diff=-oldb + f=f+2 + if(newb.gt.0)then + dir=1 + else + dir=-1 + endif + do j=pnt1,pnt2 + k=rowidx(j) + if((nonzeros(j)*dble(dir)).gt.0.0)then + pbig(k)=pbig(k)+1 + else + mbig(k)=mbig(k)+1 + endif + enddo + endif + if(f.lt.3)then + do j=pnt1,pnt2 + k=rowidx(j) + s=nonzeros(j) + if(s.gt.0.0d+0)then + if(dir.eq.1)then + maxr(k)=maxr(k)+diff*s + else + minr(k)=minr(k)+diff*s + endif + else + if(dir.eq.1)then + minr(k)=minr(k)+diff*s + else + maxr(k)=maxr(k)+diff*s + endif + endif + enddo + endif + return + end +c +c ============================================================================ +c + subroutine remove(m,n,nz,col,colidx,colnzs,rowidx,rownzs, + x colbeg,colend,rowbeg,rowend,rhs,pivot,traf) +c +c This subroutine removes a column from the row-wise representation +c and updates the right-hand side, if parameter traf is set +c + integer*4 m,n,nz,col,colidx(nz),rowidx(nz), + x colbeg(n),colend(n),rowbeg(m),rowend(m) + real*8 rhs(m),pivot,colnzs(nz),rownzs(nz) + logical traf +c + integer*4 i,j,k,pnt1,pnt2 + real*8 sol +c + do i=colbeg(col),colend(col) + j=colidx(i) + pnt1=rowbeg(j) + pnt2=rowend(j)-1 + do k=pnt1,pnt2 + if(rowidx(k).eq.col)then + sol=rownzs(k) + rowidx(k)=rowidx(pnt2+1) + rownzs(k)=rownzs(pnt2+1) + rowidx(pnt2+1)=col + rownzs(pnt2+1)=sol + goto 10 + endif + enddo + 10 rowend(j)=pnt2 + enddo + if(traf)then + do i=colbeg(col),colend(col) + rhs(colidx(i))=rhs(colidx(i))-pivot*colnzs(i) + enddo + endif + return + end +c +c ============================================================================= +c + subroutine setlst(m,n,nz,coln,collst,colmrk,rown,rowlst,rowmrk, + x procn,colsta,rowsta,colbeg,colend,cnum,list,mrk,pass, + x rowbeg,rowend,rowidx) +c +c This subroutine deletes entries from the main search list +c and set-up the local search list for the presolv subprocesses. +c + integer*4 m,n,nz,coln,collst(n),colmrk(n),procn,colsta(n), + x cnum,list(n),mrk(n),pass,colbeg(n),colend(n), + x rown,rowlst(m),rowmrk(m),rowsta(m),rowbeg(m),rowend(m), + x rowidx(nz) +c + integer*4 i,j,k,p1,p2 +c + pass=pass+1 + k=1 + cnum=0 + 10 if(k.le.coln)then + i=collst(k) + if((colsta(i).le.-2).or.(colmrk(i).eq.procn))then + collst(k)=collst(coln) + colmrk(i)=-procn + coln=coln-1 + else + k=k+1 + if((procn.le.2).and.(colbeg(i).ne.colend(i)))goto 10 + cnum=cnum+1 + list(cnum)=i + mrk(i)=pass + endif + goto 10 + endif +c + k=1 + 20 if(k.le.rown)then + i=rowlst(k) + if((rowsta(i).le.-2).or.(rowmrk(i).eq.procn))then + rowlst(k)=rowlst(rown) + rowmrk(i)=-procn + rown=rown-1 + else + k=k+1 + endif + goto 20 + endif +c +c Extend lists +c + k=1 + do while (k.le.rown) + p1=rowbeg(rowlst(k)) + p2=rowend(rowlst(k)) + do i=p1,p2 + j=rowidx(i) + if((mrk(j).lt.0).and. + x ((procn.gt.2).or.(colbeg(j).eq.colend(j))))then + mrk(j)=procn + cnum=cnum+1 + list(cnum)=j + endif + enddo + k=k+1 + enddo +c + return + end +c +c ========================================================================== +c =========================================================================== +c + subroutine rowsng(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upb,lob,ups,los, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk,rown,rowlst,rowmrk, + x cnum,list,mrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x lbig,tfeas,tzer,code) +c +c This subroutine removes singleton rows and may fixes variables +c + integer*4 n,m,mn,nz,colbeg(n),colend(n),colidx(nz), + x rowbeg(m),rowend(m),rowidx(nz),cnum,list(m),mrk(m), + x colsta(n),rowsta(m),prehis(mn),procn,prelen, + x coln,rown,collst(n),rowlst(n),colmrk(n),rowmrk(m), + x ppbig(m),pmbig(m),code +c + real*8 colnzs(nz),rownzs(nz),upb(n),lob(n),ups(m),los(m), + x rhs(m),obj(n),pmaxr(m),pminr(m),addobj,lbig,tfeas,tzer +c + integer*4 i,l,row,col,dir,crem,rrem + real*8 ub,lb,upper,lower,sol,pivot + logical traf + character*99 buff +c +c --------------------------------------------------------------------------- +c + rrem=0 + crem=0 + 10 if(cnum.ge.1)then + row=list(1) + mrk(row)=-1 + list(1)=list(cnum) + cnum=cnum-1 + if(rowbeg(row).eq.rowend(row))then +c +c Remove singleton row +c + col=rowidx(rowbeg(row)) + pivot=rownzs(rowbeg(row)) + traf=.false. + call remove(n,m,nz,row,rowidx,rownzs,colidx,colnzs, + x rowbeg,rowend,colbeg,colend,obj,lower,traf) + rrem=rrem+1 + prelen=prelen+1 + prehis(prelen)=row+n + rowsta(row)=-2-procn +c +c Calculate new bounds (ub,lb) +c + if(ups(row).lt.lbig)then + ub=rhs(row)+ups(row) + else + ub=ups(row) + endif + if(los(row).gt.-lbig)then + lb=rhs(row)+los(row) + else + lb=los(row) + endif + if(pivot.gt.0)then + if(ub.lt.lbig)ub=ub/pivot + if(lb.gt.-lbig)lb=lb/pivot + else + if(ub.lt.lbig)then + sol=ub/pivot + else + sol=-ub + endif + if(lb.gt.-lbig)then + ub=lb/pivot + else + ub=-lb + endif + lb=sol + endif +c +c update +c + upper=upb(col) + lower=lob(col) + dir=-1 + call chgmxm(colbeg(col),colend(col),upper,lower,colidx, + x colnzs,ppbig,pmaxr,pmbig,pminr,lbig,dir,m) + if(lb.gt.lower)lower=lb + if(ub.lt.upper)upper=ub +c +c Check primal feasibility +c + if((lower-upper).gt.((abs(lower)+1.0d+0)*tfeas))then + cnum=-col + code=4 + goto 100 + endif +c +c Check for fix variable +c + if((upper-lower).lt.((abs(lower)+1.0d+0)*tzer))then + prelen=prelen+1 + prehis(prelen)=col + colsta(col)=-2-procn + traf=.true. + call remove(m,n,nz,col,colidx,colnzs,rowidx,rownzs, + x colbeg,colend,rowbeg,rowend,rhs,lower,traf) + crem=crem+1 + addobj=addobj+obj(col)*lower + do i=colbeg(col),colend(col) + l=colidx(i) + if((mrk(l).lt.0).and.(rowbeg(l).eq.rowend(l)))then + mrk(l)=procn + cnum=cnum+1 + list(cnum)=l + endif + enddo + else +c +c Update bounds +c + dir=1 + call chgmxm(colbeg(col),colend(col),upper,lower,colidx, + x colnzs,ppbig,pmaxr,pmbig,pminr,lbig,dir,m) + endif + lob(col)=lower + upb(col)=upper + +c +c Update search lists +c + do i=colbeg(col),colend(col) + l=colidx(i) + if(rowmrk(l).lt.0)then + rown=rown+1 + rowlst(rown)=l + endif + rowmrk(l)=procn + enddo + if(colsta(col).gt.-2)then + if (colmrk(col).lt.0)then + coln=coln+1 + collst(coln)=col + endif + colmrk(col)=procn + endif + endif + goto 10 + endif +c + 100 if(rrem+crem.gt.0)then + write(buff,'(1x,a,i5,a,i5,a)') + x 'ROWSNG:',crem,' columns,',rrem,' rows removed' + call mprnt(buff) + endif + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine colsng(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upb,lob,ups,los, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk, + x cnum,list,mrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x lbig,tfeas,tzer,code) +c +c This subroutine cheks singleton columns +c + integer*4 n,m,mn,nz,colbeg(n),colend(n),colidx(nz), + x rowbeg(m),rowend(m),rowidx(nz),cnum,list(n),mrk(n), + x colsta(n),rowsta(m),prehis(mn),procn,prelen, + x coln,collst(n),colmrk(n),ppbig(m),pmbig(m),code +c + real*8 colnzs(nz),rownzs(nz),upb(n),lob(n),ups(m),los(m), + x rhs(m),obj(n),pmaxr(m),pminr(m),addobj,lbig,tfeas,tzer +c + integer*4 i,j,k,l,row,col,crem,rrem + real*8 ub,lb,upper,lower,sol,pivot + logical traf + character*99 buff +c +c --------------------------------------------------------------------------- +c + rrem=0 + crem=0 + 10 if(cnum.ge.1)then + col=list(1) + mrk(col)=-1 + list(1)=list(cnum) + cnum=cnum-1 + if(colbeg(col).eq.colend(col))then + row=colidx(colbeg(col)) + pivot=colnzs(colbeg(col)) + if(pivot.gt.0.0d+0)then + lb=lob(col) + ub=upb(col) + sol=obj(col) + else + ub=-lob(col) + lb=-upb(col) + pivot=-pivot + sol=-obj(col) + endif + if((lb.gt.-lbig).or.(ub.lt.lbig))then +c +c Compute lower bound of the LP constraint +c + if(lb.le.-lbig)then + l=pmbig(row)-1 + lower=pminr(row) + else + l=pmbig(row) + lower=pminr(row)-lb*pivot + endif + if(ups(row).gt.lbig)then + l=l+1 + else + lower=lower-ups(row) + endif + if(l.gt.0)lower=-lbig +c +c Compute upper bound of the LP constraint +c + if(ub.gt.lbig)then + l=ppbig(row)-1 + upper=pmaxr(row) + else + l=ppbig(row) + upper=pmaxr(row)-ub*pivot + endif + if(los(row).lt.-lbig)then + l=l+1 + else + upper=upper-los(row) + endif + if(l.gt.0)upper=lbig +c +c Check new upper and lower bound +c + if(lb.gt.-lbig)then + upper=(rhs(row)-upper)/pivot + if((lb-upper).gt.(abs(lb)+1.0d+0)*tfeas)goto 10 + endif + if(ub.lt.lbig)then + lower=(rhs(row)-lower)/pivot + if((lower-ub).gt.(abs(ub)+1.0d+0)*tfeas)goto 10 + endif + endif +c +c ( Hidden ) free singleton column found, check slacks +c + pivot=sol/pivot + if(pivot.gt.tzer)then + if(los(row).lt.-lbig)then + cnum=-col + code=3 + goto 999 + endif + rhs(row)=rhs(row)+los(row) + else if(pivot.lt.-tzer)then + if(ups(row).gt.lbig)then + cnum=-col + code=3 + goto 999 + endif + rhs(row)=rhs(row)+ups(row) + endif +c +c Column administration +c + prelen=prelen+1 + prehis(prelen)=col + colsta(col)=-2-procn + traf=.false. + call remove(m,n,nz,col,colidx,colnzs,rowidx,rownzs, + x colbeg,colend,rowbeg,rowend,rhs,pivot,traf) + crem=crem+1 + addobj=addobj+rhs(row)*pivot +c +c Row administration +c + prelen=prelen+1 + prehis(prelen)=row+n + rowsta(row)=-2-procn + traf=.true. + call remove(n,m,nz,row,rowidx,rownzs,colidx,colnzs, + x rowbeg,rowend,colbeg,colend,obj,pivot,traf) + rrem=rrem+1 + j=rowbeg(row) + k=rowend(row) + do i=j,k + l=rowidx(i) + if(colmrk(l).lt.0)then + coln=coln+1 + collst(coln)=l + endif + colmrk(l)=procn + if((mrk(l).lt.0).and.(colbeg(l).eq.colend(l)))then + mrk(l)=procn + cnum=cnum+1 + list(cnum)=l + endif + enddo + endif + goto 10 + endif + 999 if(rrem+crem.gt.0)then + write(buff,'(1x,a,i5,a,i5,a)') + x 'COLSNG:',crem,' columns,',rrem,' rows removed' + call mprnt(buff) + endif + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine rowact(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upb,lob,ups,los, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk,rown,rowlst,rowmrk, + x cnum,list,mrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x lbig,tfeas,code) +c +c This subroutine removes singleton rows and may fixes variables +c + integer*4 n,m,mn,nz,colbeg(n),colend(n),colidx(nz), + x rowbeg(m),rowend(m),rowidx(nz),cnum,list(m),mrk(m), + x colsta(n),rowsta(m),prehis(mn),procn,prelen, + x coln,rown,collst(n),rowlst(n),colmrk(n),rowmrk(m), + x ppbig(m),pmbig(m),code +c + real*8 colnzs(nz),rownzs(nz),upb(n),lob(n),ups(m),los(m), + x rhs(m),obj(n),pmaxr(m),pminr(m),addobj,lbig,tfeas +c + integer*4 i,j,k,l,row,col,dir,setdir,p,p1,p2,red,crem,rrem + real*8 upper,lower,pivot,eps + logical traf + character*99 buff +c +c --------------------------------------------------------------------------- +c + rrem=0 + crem=0 + 10 if(cnum.ge.1)then + row=list(1) + mrk(row)=-1 + list(1)=list(cnum) + cnum=cnum-1 +c + if(ppbig(row).le.0)then + upper=pmaxr(row)-rhs(row) + else + upper=lbig + endif + if(pmbig(row).le.0)then + lower=pminr(row)-rhs(row) + else + lower=-lbig + endif +c +c Check feasibility +c + eps=abs(rhs(row)+1.0d+0)*tfeas + if((lower-ups(row).gt.eps) .or. + x (los(row)-upper.gt.eps))then + cnum=-row-n + code=4 + goto 100 + endif +c +c Check redundancy +c + setdir=0 + red=0 + if((los(row)-lower.lt.eps) .and. + x (upper-ups(row).lt.eps))then + red=1 + endif + if(ups(row)-lower.lt.eps)then + red=1 + setdir=-1 + else if(upper-los(row).lt.eps)then + red=1 + setdir=1 + endif +c +c +c + if(red.gt.0)then + prelen=prelen+1 + prehis(prelen)=row+n + rowsta(row)=-2-procn + traf=.false. + call remove(n,m,nz,row,rowidx,rownzs,colidx,colnzs, + x rowbeg,rowend,colbeg,colend,obj,pivot,traf) + rrem=rrem+1 + if(setdir.eq.0)then + j=rowbeg(row) + k=rowend(row) + do i=j,k + l=rowidx(i) + if(colmrk(l).lt.0)then + coln=coln+1 + collst(coln)=l + endif + colmrk(l)=procn + enddo + else + dir=-1 + traf=.true. + j=rowbeg(row) + k=rowend(row) + do i=j,k + col=rowidx(i) + if(rownzs(i)*dble(setdir).gt.0.0d+0)then + pivot=upb(col) + else + pivot=lob(col) + endif + p1=colbeg(col) + p2=colend(col) + call chgmxm(p1,p2,upb(col),lob(col),colidx,colnzs, + x ppbig,pmaxr,pmbig,pminr,lbig,dir,m) + addobj=addobj+pivot*obj(col) + lob(col)=pivot + upb(col)=pivot + prelen=prelen+1 + prehis(prelen)=col + colsta(col)=-2-procn + call remove(m,n,nz,col,colidx,colnzs,rowidx,rownzs, + x colbeg,colend,rowbeg,rowend,rhs,pivot,traf) + crem=crem+1 + p1=colbeg(col) + p2=colend(col) + do p=p1,p2 + l=colidx(p) + if(rowmrk(l).lt.0)then + rown=rown+1 + rowlst(rown)=l + endif + rowmrk(l)=procn + if(mrk(l).lt.0)then + mrk(l)=procn + cnum=cnum+1 + list(cnum)=l + endif + enddo + enddo + endif + endif + goto 10 + endif +c + 100 if(rrem+crem.gt.0)then + write(buff,'(1x,a,i5,a,i5,a)') + x 'ROWACT:',crem,' columns,',rrem,' rows removed' + call mprnt(buff) + endif + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine chepdu(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upb,lob,ups,los, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk,rown,rowlst,rowmrk, + x cnum,list,mrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x lbig,tzer,code) +c +c This subroutine performs the "cheap" dual tests +c + integer*4 n,m,mn,nz,colbeg(n),colend(n),colidx(nz), + x rowbeg(m),rowend(m),rowidx(nz),cnum,list(n),mrk(n), + x colsta(n),rowsta(m),prehis(mn),procn,prelen, + x coln,rown,collst(n),rowlst(n),colmrk(n),rowmrk(m), + x ppbig(m),pmbig(m),code +c + real*8 colnzs(nz),rownzs(nz),upb(n),lob(n),ups(m),los(m), + x rhs(m),obj(n),pmaxr(m),pminr(m),addobj,lbig,tzer +c + integer*4 i,j,k,l,row,col,dir,p,p1,p2,mode,crem,rrem + real*8 pivot,sol + logical traf + character*99 buff +c +c --------------------------------------------------------------------------- +c + crem=0 + rrem=0 + 10 if(cnum.ge.1)then + col=list(1) + mrk(col)=-1 + list(1)=list(cnum) + cnum=cnum-1 +c + p1=colbeg(col) + p2=colend(col) + mode=0 + do i=p1,p2 + if (abs(colnzs(i)).gt.tzer)then + row=colidx(i) + if(ups(row).gt.lbig)then + k=1 + else if(los(row).lt.-lbig)then + k=-1 + else + goto 10 + endif + if(colnzs(i).gt.0.0d+0)then + j=1 + else + j=-1 + endif + if(mode.eq.0)then + mode=j*k + if((obj(col)*dble(mode)).gt.0.0d+0)goto 10 + else + if(j*k*mode.lt.0)goto 10 + endif + endif + enddo +c +c Check the column +c + if(mode.gt.0)then + sol=upb(col) + else if(mode.lt.0)then + sol=lob(col) + else + if(obj(col).lt.0.0d+0)then + sol=upb(col) + else if(obj(col).gt.0.0) then + sol=lob(col) + else + sol=lob(col) + if(upb(col).ge.lbig)sol=upb(col) + endif + endif +c +c Adminisztracio +c + dir=-1 + call chgmxm(p1,p2,upb(col),lob(col),colidx,colnzs, + x ppbig,pmaxr,pmbig,pminr,lbig,dir,m) +c + prelen=prelen+1 + prehis(prelen)=col + colsta(col)=-2-procn + traf=.true. + if(abs(sol).gt.lbig)then + pivot=0.0d+0 + else + pivot=sol + endif + call remove(m,n,nz,col,colidx,colnzs,rowidx,rownzs, + x colbeg,colend,rowbeg,rowend,rhs,pivot,traf) + crem=crem+1 +c + if(abs(sol).gt.lbig)then + if(abs(obj(col)).gt.tzer)then + cnum=-col + code=3 + goto 999 + endif +c +c Row redundacncy with the column +c + do i=p1,p2 + row=colidx(i) + if(abs(colnzs(i)).gt.tzer)then + prelen=prelen+1 + prehis(prelen)=row+n + rowsta(row)=-2-procn + traf=.false. + call remove(n,m,nz,row,rowidx,rownzs,colidx,colnzs, + x rowbeg,rowend,colbeg,colend,obj,sol,traf) + rrem=rrem+1 + j=rowbeg(row) + k=rowend(row) + do p=j,k + l=rowidx(p) + if(colmrk(l).lt.0)then + coln=coln+1 + collst(coln)=l + endif + colmrk(l)=procn + if(mrk(l).lt.0)then + mrk(l)=procn + cnum=cnum+1 + list(cnum)=l + endif + enddo + endif + enddo + else +c +c Column is fixed to one bound +c + do i=p1,p2 + row=colidx(i) + if(rowmrk(row).lt.0)then + rown=rown+1 + rowlst(rown)=row + endif + rowmrk(row)=procn + enddo + addobj=addobj+obj(col)*sol + lob(col)=pivot + upb(col)=pivot + endif +c + goto 10 + endif + 999 if(rrem+crem.gt.0)then + write(buff,'(1x,a,i5,a,i5,a)') + x 'CHEPDU:',crem,' columns,',rrem,' rows removed' + call mprnt(buff) + endif + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine duchek(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upb,lob,ups,los, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x coln,collst,colmrk,rown,rowlst,rowmrk, + x cnum,clist,cmrk,rnum,rlist,rmrk,procn, + x ppbig,pmaxr,pmbig,pminr, + x p,q,pbig,mbig,maxc,minc, + x big,lbig,tfeas,tzer,bigbou,search,code,prelev) +c +c This subroutine removes singleton rows and may fixes variables +c + integer*4 n,m,mn,nz,colbeg(n),colend(n),colidx(nz), + x rowbeg(m),rowend(m),rowidx(nz),cnum,clist(n),cmrk(n), + x rnum,rlist(m),rmrk(m), + x colsta(n),rowsta(m),prehis(mn),procn,prelen, + x coln,rown,collst(n),rowlst(n),colmrk(n),rowmrk(m), + x ppbig(m),pmbig(m),pbig(n),mbig(n),search,code,prelev +c + real*8 colnzs(nz),rownzs(nz),upb(n),lob(n),ups(m),los(m), + x rhs(m),obj(n),pmaxr(m),pminr(m),p(m),q(m),maxc(n),minc(n), + x addobj,big,lbig,tfeas,tzer,bigbou +c + integer*4 i,j,up,row,col,dir,pnt1,pnt2,p1,p2,crem,rrem,up3, + x lstcnt + real*8 sol,toler,up1,up2 + logical traf + character*99 buff +c +c --------------------------------------------------------------------------- +c + crem=0 + rrem=0 + do while (rnum.ge.1) + row=rlist(1) + if (ups(row).gt.lbig)then + p(row)=0.0d+0 + else + p(row)=-big + endif + if(los(row).lt.-lbig)then + q(row)=0.0d+0 + else + q(row)=big + endif + rmrk(row)=-1 + rlist(1)=rlist(rnum) + rnum=rnum-1 + enddo + + cnum=0 + do i=1,n + if(upb(i).lt.lbig)then + mbig(i)=1 + else + mbig(i)=0 + endif + if(lob(i).gt.-lbig)then + pbig(i)=1 + else + pbig(i)=0 + endif + maxc(i)=0.0d+0 + minc(i)=0.0d+0 + if((colsta(i).gt.-2).and.(upb(i)-lob(i).gt.lbig))then + cnum=cnum+1 + cmrk(i)=1 + clist(cnum)=i + else + cmrk(i)=-2 + endif + enddo + dir=1 + do i=1,m + if(rowsta(i).gt.-2)then + call chgmxm(rowbeg(i),rowend(i),q(i),p(i),rowidx,rownzs, + x pbig,maxc,mbig,minc,lbig,dir,n) + endif + enddo +c + lstcnt=0 + do while (cnum.ne.lstcnt) + lstcnt=lstcnt+1 + if(lstcnt.gt.n)then + lstcnt=1 + search=search-1 + if(search.eq.0)goto 100 + endif + col=clist(lstcnt) + cmrk(col)=-1 + pnt1=colbeg(col) + pnt2=colend(col) + do i=pnt1,pnt2 + row=colidx(i) +c +c Compute new upper bound: up1+(obj-up2)/nzs +c + if(colnzs(i).gt.0.0d+0)then + up2=minc(col) + up3=mbig(col) + else + up2=maxc(col) + up3=pbig(col) + endif + if(p(row).lt.-lbig)then + up1=0.0d+0 + up=1 + else + up1=p(row) + up=0 + endif + if(up.eq.up3)then + sol=up1+(obj(col)-up2)/colnzs(i) + if(abs(sol).lt.bigbou)then + if(q(row)-sol.gt.(abs(sol)+1.0d+0)*tfeas)then + p1=rowbeg(row) + p2=rowend(row) + dir=1 + call modmxm(nz,p1,p2,q(row),sol,rowidx,rownzs, + x pbig,maxc,mbig,minc,lbig,dir,n) + q(row)=sol + do j=p1,p2 + if(cmrk(rowidx(j)).eq.-1)then + if(upb(rowidx(j))-lob(rowidx(j)).gt.lbig)then + cnum=cnum+1 + if(cnum.gt.n)cnum=1 + clist(cnum)=rowidx(j) + cmrk(rowidx(j))=1 + endif + endif + enddo + endif + endif + endif +c +c Compute new lower bound: up1+(obj-up2)/nzs +c + if(colnzs(i).gt.0.0d+0)then + up2=maxc(col) + up3=pbig(col) + else + up2=minc(col) + up3=mbig(col) + endif + if(q(row).gt.lbig)then + up1=0.0d+0 + up=1 + else + up1=q(row) + up=0 + endif + if(up.eq.up3)then + sol=up1+(obj(col)-up2)/colnzs(i) + if(abs(sol).lt.bigbou)then + if(sol-p(row).gt.(abs(sol)+1.0d+0)*tfeas)then + p1=rowbeg(row) + p2=rowend(row) + dir=-1 + call modmxm(nz,p1,p2,p(row),sol,rowidx,rownzs, + x pbig,maxc,mbig,minc,lbig,dir,n) + p(row)=sol + do j=p1,p2 + if(cmrk(rowidx(j)).eq.-1)then + if(upb(rowidx(j))-lob(rowidx(j)).gt.lbig)then + cnum=cnum+1 + if(cnum.gt.n)cnum=1 + clist(cnum)=rowidx(j) + cmrk(rowidx(j))=1 + endif + endif + enddo + endif + endif + endif + enddo + enddo +c +c Dual feasibility check +c + 100 do while (cnum.ne.lstcnt) + lstcnt=lstcnt+1 + if(lstcnt.gt.n)lstcnt=1 + cmrk(clist(lstcnt))=-1 + enddo + cnum=0 + do row=1,m + if(rowsta(row).gt.-2)then + if((p(row)-q(row)).gt.(abs(p(row))+1.0d+0)*tfeas)then + code=3 + cnum=-row-n + goto 999 + else if (iand(prelev,512).gt.0)then + if(q(row)-p(row).lt.(abs(p(row))+1.0d+0)*tfeas)then + sol=(p(row)+q(row))/2.0d+0 + prelen=prelen+1 + prehis(prelen)=row + rowsta(row)=-2-procn + traf=.true. + call remove(n,m,nz,row,rowidx,rownzs,colidx,colnzs, + x rowbeg,rowend,colbeg,colend,obj,sol,traf) + addobj=addobj+rhs(row)*sol + do i=rowbeg(row),rowend(row) + col=rowidx(i) + if(colmrk(col).lt.0)then + coln=coln+1 + collst(coln)=col + endif + colmrk(col)=procn + enddo + rrem=rrem+1 + endif + endif + endif + enddo +c +c Checking variables +c + do 10 col=1,n + if(colsta(col).le.-2)goto 10 + toler=(abs(obj(col))+1.0d+0)*tfeas + if(upb(col).lt.lbig)then + i=1 + else + i=0 + endif + if(lob(col).gt.-lbig)then + j=1 + else + j=0 + endif + if((mbig(col).eq.i).and.(obj(col)-minc(col).lt.-toler))then + sol=upb(col) + else if((pbig(col).eq.j).and.(obj(col)-maxc(col).ge.toler))then + sol=lob(col) + else + goto 10 + endif +c +c Variable is set to a bound +c + if(abs(sol).gt.lbig)then + if(abs(obj(col)).gt.tzer)then + cnum=-col + code=3 + goto 999 + endif + endif + prelen=prelen+1 + prehis(prelen)=col + colsta(col)=-2-procn + traf=.true. + call remove(m,n,nz,col,colidx,colnzs,rowidx,rownzs, + x colbeg,colend,rowbeg,rowend,rhs,sol,traf) + crem=crem+1 + addobj=addobj+obj(col)*sol + do i=colbeg(col),colend(col) + j=colidx(i) + if(rowmrk(j).lt.0)then + rown=rown+1 + rowlst(rown)=j + endif + rowmrk(j)=procn + enddo + dir=-1 + call chgmxm(colbeg(col),colend(col),upb(col),lob(col),colidx, + x colnzs,ppbig,pmaxr,pmbig,pminr,lbig,dir,m) + upb(col)=sol + lob(col)=sol + 10 continue +c + 999 if(rrem+crem.gt.0)then + write(buff,'(1x,a,i5,a,i5,a)') + x 'DUCHEK:',crem,' columns,',rrem,' rows removed' + call mprnt(buff) + endif + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine bndchk(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upb,lob,ups,los, + x rhs,obj,addobj,colsta,rowsta,prelen,prehis, + x cnum,list,mrk,procn,oldlob,oldupb, + x ppbig,pmaxr,pmbig,pminr,chglob,chgupb, + x big,lbig,tfeas,search,chgmax,bigbou,code) +c +c This subroutine checks bounds on variables +c NOTE : this subroutine destroys min and max row activity counters ! +c + integer*4 n,m,mn,nz,colbeg(n),colend(n),colidx(nz), + x rowbeg(m),rowend(m),rowidx(nz),cnum,list(n),mrk(n), + x colsta(n),rowsta(m),prehis(mn),procn,prelen, + x ppbig(m),pmbig(m),chglob(n),chgupb(n),search,chgmax,code +c + real*8 colnzs(nz),rownzs(nz),upb(n),lob(n),ups(m),los(m), + x rhs(m),obj(n),pmaxr(m),pminr(m),addobj,big,lbig,bigbou, + x tfeas,oldlob(n),oldupb(n) +c + integer*4 i,j,up,row,col,dir,pnt1,pnt2,p1,p2,crem,rrem,up3,lstcnt + real*8 sol,toler,up1,up2 + logical traf + character*99 buff +c +c --------------------------------------------------------------------------- +c + crem=0 + rrem=0 + cnum=0 + do i=1,n + chglob(i)=0 + chgupb(i)=0 + oldupb(i)=upb(i) + oldlob(i)=lob(i) + enddo + do i=1,m + if(ups(i).gt.lbig)then + pmbig(i)=pmbig(i)+1 + else + pminr(i)=pminr(i)-ups(i) + endif + if(los(i).lt.-lbig)then + ppbig(i)=ppbig(i)+1 + else + pmaxr(i)=pmaxr(i)-los(i) + endif + if(rowsta(i).gt.-2)then + cnum=cnum+1 + mrk(i)=1 + list(cnum)=i + else + mrk(i)=-2 + endif + enddo +c + lstcnt=0 + do while (cnum.ne.lstcnt) + lstcnt=lstcnt+1 + if(lstcnt.gt.m)then + lstcnt=1 + search=search-1 + if(search.eq.0)goto 100 + endif + row=list(lstcnt) + mrk(row)=-1 + pnt1=rowbeg(row) + pnt2=rowend(row) +c + do i=pnt1,pnt2 + col=rowidx(i) +c +c Compute new upper bound: lo1+(rhs-up2)/nzs +c + if(rownzs(i).gt.0.0d+0)then + up2=pminr(row) + up3=pmbig(row) + else + up2=pmaxr(row) + up3=ppbig(row) + endif + if(lob(col).lt.-lbig)then + up1=0.0d+0 + up=1 + else + up1=lob(col) + up=0 + endif + if(up.eq.up3)then + sol=up1+(rhs(row)-up2)/rownzs(i) + toler=(abs(sol)+1.0d+0)*tfeas + if(abs(sol).lt.bigbou)then + if(upb(col)-sol.gt.toler)then + chgupb(col)=chgupb(col)+1 + p1=colbeg(col) + p2=colend(col) + dir=1 + if(lob(col)-sol.gt.toler)then + cnum=-col + code=4 + goto 999 + endif + if(sol-lob(col).lt.toler)then + sol=lob(col) + endif + call modmxm(nz,p1,p2,upb(col),sol,colidx,colnzs, + x ppbig,pmaxr,pmbig,pminr,lbig,dir,m) + upb(col)=sol + if(chgupb(col).lt.chgmax)then + do j=p1,p2 + if(mrk(colidx(j)).eq.-1)then + cnum=cnum+1 + if(cnum.gt.m)cnum=1 + list(cnum)=colidx(j) + mrk(colidx(j))=1 + endif + enddo + endif + endif + endif + endif +c +c Compute new lower bound: up1+(rhs-up2)/nzs +c + if(rownzs(i).gt.0.0d+0)then + up2=pmaxr(row) + up3=ppbig(row) + else + up2=pminr(row) + up3=pmbig(row) + endif + if(upb(col).gt.lbig)then + up1=0.0d+0 + up=1 + else + up1=upb(col) + up=0 + endif + if(up.eq.up3)then + sol=up1+(rhs(row)-up2)/rownzs(i) + toler=(abs(sol)+1.0d+0)*tfeas + if(abs(sol).lt.bigbou)then + if(sol-lob(col).gt.(abs(sol)+1.0d+0)*tfeas)then + chglob(col)=chglob(col)+1 + p1=colbeg(col) + p2=colend(col) + dir=-1 + if((sol-upb(col)).gt.toler)then + cnum=-col + code=4 + goto 999 + endif + if(upb(col)-sol.lt.toler)then + sol=upb(col) + endif + call modmxm(nz,p1,p2,lob(col),sol,colidx,colnzs, + x ppbig,pmaxr,pmbig,pminr,lbig,dir,m) + lob(col)=sol + if(chglob(col).lt.chgmax)then + do j=p1,p2 + if(mrk(colidx(j)).eq.-1)then + cnum=cnum+1 + if(cnum.gt.m)cnum=1 + list(cnum)=colidx(j) + mrk(colidx(j))=1 + endif + enddo + endif + endif + endif + endif + enddo + enddo +c +c Checking row feasibility +c + 100 cnum=0 + do row=1,m + if(rowsta(row).gt.-2)then + sol=(abs(rhs(row))+1.0d+0)*tfeas + if((ppbig(row).eq.0).and.(pmaxr(row)-rhs(row).lt.-sol))then + code=3 + cnum=-row-n + goto 999 + endif + if((pmbig(row).eq.0).and.(rhs(row)-pminr(row).lt.-sol))then + code=3 + cnum=-row-n + goto 999 + endif + endif + enddo +c +c Bound check and modification +c + do col=1,n + if(colsta(col).gt.-2)then + if((lob(col)-upb(col)).gt.(abs(lob(col))+1.0d+0)*tfeas)then + code=4 + cnum=-col + goto 999 + else if(upb(col)-lob(col).lt.abs(lob(col)+1.0d+0)*tfeas)then + sol=(upb(col)+lob(col))/2.0d+0 + prelen=prelen+1 + prehis(prelen)=col + colsta(col)=-2-procn + traf=.true. + call remove(m,n,nz,col,colidx,colnzs,rowidx,rownzs, + x colbeg,colend,rowbeg,rowend,rhs,sol,traf) + crem=crem+1 + addobj=addobj+obj(col)*sol + upb(col)=sol + lob(col)=sol + else + if(chglob(col).gt.0)then + if(oldlob(col).gt.-lbig)rrem=rrem+1 + lob(col)=-big + endif + if(chgupb(col).gt.0)then + if(oldupb(col).lt.lbig)rrem=rrem+1 + upb(col)=big + endif + endif + endif + enddo +c + 999 if(rrem+crem.gt.0)then + write(buff,'(1x,a,i5,a,i5,a)') + x 'BNDCHK:',crem,' columns,',rrem,' bounds removed' + call mprnt(buff) + endif + return + end +c +c =========================================================================== +c ============================================================================ +c + subroutine coldbl(n,m,mn,nz, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x upb,lob,obj,colsta, + x prelen,prehis,procn,mark,valc,vartyp, + x big,lbig,tfeas,tzer) +c + integer*4 n,m,mn,nz,colbeg(n),colend(n),colidx(nz), + x rowbeg(m),rowend(m),rowidx(nz),colsta(n), + x prelen,prehis(mn),procn,mark(m),vartyp(n) + real*8 obj(n),lob(n),upb(n),colnzs(nz),rownzs(nz),valc(m), + x big,lbig,tfeas,tzer +c + integer*4 i,j,k,l,col,row,pcol,pnt1,pnt2,ppnt1,ppnt2,pntt1,pntt2, + x crem,rrem,collen + real*8 sd,toler,obj1,obj2,lo1,lo2,up1,up2,sol + logical traf + character*99 buff +c +c ============================================================================ +c + crem=0 + rrem=0 + do i=1,m + mark(i)=0 + enddo +c +c Start search +c + do 25 col=1,n + if((colsta(col).gt.-2).and.(colend(col).ge.colbeg(col)))then + pnt1=colbeg(col) + pnt2=colend(col) + collen=pnt2-pnt1 + do i=pnt1,pnt2 + mark(colidx(i))=col + valc(colidx(i))=colnzs(i) + enddo +c +c Select row +c + row=0 + l=n+1 + do j=pnt1,pnt2 + k=colidx(j) + if(rowend(k)-rowbeg(k).lt.l)then + l=rowend(k)-rowbeg(k) + row=k + endif + enddo +c +c Start search in the row +c + if(row.ne.0)then + pntt1=rowbeg(row) + pntt2=rowend(row) + do 15 l=pntt1,pntt2 + pcol=rowidx(l) + ppnt1=colbeg(pcol) + ppnt2=colend(pcol) + if((pcol.le.col).or.(collen.ne.ppnt2-ppnt1))goto 15 + do i=ppnt1,ppnt2 + if(mark(colidx(i)).ne.col)goto 15 + enddo +c +c Nonzero structure is O.K. +c + sd=valc(colidx(ppnt1))/colnzs(ppnt1) + toler=(abs(sd)+1.0d+0)*tzer + do i=ppnt1,ppnt2 + if(abs(valc(colidx(i))/colnzs(i)-sd).gt.toler)goto 15 + enddo +c +c Nonzeros are dependent, factor : sd, columns: col,pcol +c + obj1=obj(col) + obj2=obj(pcol)*sd +c +c Identical columns found +c + if(abs(obj1-obj2).le.(abs(obj1)+1.0d+0)*tfeas)then + lo1=lob(pcol) + up1=upb(pcol) + if(lob(col).lt.-lbig)then + if(sd.gt.0.0d+0)then + lo2=lob(col) + else + lo2=-lob(col) + endif + else + lo2=lob(col)/sd + endif + if(upb(col).gt.lbig)then + if(sd.gt.0.0d+0)then + up2=upb(col) + else + up2=-upb(col) + endif + else + up2=upb(col)/sd + endif + if(sd.lt.0.0d+0)then + sol=up2 + up2=lo2 + lo2=sol + endif +c +c Store factor and old bound info +c + obj(col)=sd + vartyp(col)=0 + if(lo2.lt.-lbig)then + vartyp(col)=4 + lob(col)=lo1 + else + lob(col)=lo2 + endif + if(up2.gt.lbig)then + vartyp(col)=vartyp(col)+8 + upb(col)=up1 + else + upb(col)=up2 + endif + if((lo1.gt.-lbig).and.(lo2.gt.-lbig))then + lob(pcol)=lo1+lo2 + else + lob(pcol)=-big + endif + if((up1.lt.lbig).and.(up2.lt.lbig))then + upb(pcol)=up1+up2 + else + upb(pcol)=big + endif + prelen=prelen+1 + prehis(prelen)=col + colsta(col)=-2-procn-pcol-10 + traf=.false. + call remove(m,n,nz,col,colidx,colnzs,rowidx,rownzs, + x colbeg,colend,rowbeg,rowend,obj,sol,traf) + crem=crem+1 + goto 25 + endif + 15 continue + endif + endif + 25 continue + if(rrem+crem.gt.0)then + write(buff,'(1x,a,i5,a,i5,a)') + x 'COLDBL:',crem,' columns,',rrem,' rows removed' + call mprnt(buff) + endif + return + end +c ============================================================================ +c ======================================================================== +c + subroutine aggreg(colpnt,colidx,colnzs,rowidx, + x colsta,rowsta,colbeg,colend,rowbeg,rowend, + x rhs,obj,prehis,prelen,mrk,vartyp,slktyp,iwrk1,iwrk2, + x iwrk3,pivcol,pivrow,rwork,addobj,prelev,code) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + common/numer/ tplus,tzer + real*8 tplus,tzer +c + integer*4 colpnt(n1),colidx(cfree),rowidx(rfree), + x colbeg(n),colend(n),rowbeg(m),rowend(m),slktyp(m), + x colsta(n),rowsta(m),prehis(mn),prelen,prelev,code,mrk(mn), + x iwrk1(mn),iwrk2(mn),iwrk3(mn),pivcol(n),pivrow(m),vartyp(n) + real*8 colnzs(cfree),addobj,rhs(m),obj(n), + x rwork(m) +c + real*8 reltol,abstol,redtol,filtol + integer*4 i,j,k,pnt1,pnt2,nfill,pnt,pnto,procn,fpnt + character*99 buff +c + reltol=1.0d-3 + abstol=1.0d-5 + redtol=1.0d-4 + filtol=4.0d+0 +c + if(iand(prelev,128).gt.0)then + procn=8 + pnto=colpnt(1) + pnt=nz+1 + do i=1,n + if(colsta(i).gt.-2)then + pnt1=colbeg(i) + pnt2=colend(i) + colbeg(i)=pnt + do j=pnt1,pnt2 + colidx(pnt)=colidx(j) + colnzs(pnt)=colnzs(j) + pnt=pnt+1 + enddo + colend(i)=pnt-1 + pnt1=pnt2+1 + else + pnt1=colpnt(i) + endif + pnt2=colpnt(i+1)-1 + colpnt(i)=pnto + do j=pnt1,pnt2 + colidx(pnto)=colidx(j) + colnzs(pnto)=colnzs(j) + pnto=pnto+1 + enddo + enddo + colpnt(n+1)=pnto + call elimin(m,n,nz,cfree,rfree, + x colbeg,colend,rowbeg,rowend,colidx,rowidx,colnzs,colsta,rowsta, + x obj,rhs,vartyp,slktyp, + x iwrk1,iwrk2,iwrk1(n+1),iwrk2(n+1),mrk,mrk(n+1), + x iwrk3,iwrk3(n+1),rwork,pivcol,pivrow,abstol,reltol,filtol, + x pivotn,nfill,addobj,fpnt,code) + if(code.ne.0)goto 999 +c +c Compute new column lengths +c + do i=1,n + iwrk1(i)=colpnt(i+1)-colpnt(i) + if(colsta(i).gt.-2)iwrk1(i)=iwrk1(i)+colend(i)-colbeg(i)+1 + enddo + do j=1,pivotn + i=pivrow(j) + pnt1=rowbeg(i) + pnt2=rowend(i) + do k=pnt1,pnt2 + iwrk1(colidx(k))=iwrk1(colidx(k))+1 + enddo + enddo +c +c Generate new pointers for columns +c + pnt=1 + do i=1,n + iwrk2(i)=pnt + pnt=pnt+iwrk1(i) + enddo + if(pnt.gt.fpnt)then + code=-2 + write(buff,'(1x,a)')'Ran out of RERAL memory' + call mprnt(buff) + goto 999 + endif +c +c Assemble the transformed matrix +c + do i=n,1,-1 + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + pnt=iwrk2(i)+iwrk1(i)-1 + do j=pnt2,pnt1,-1 + colidx(pnt)=colidx(j) + colnzs(pnt)=colnzs(j) + pnt=pnt-1 + enddo + if(colsta(i).gt.-2)then + fpnt=iwrk2(i) + pnt1=colbeg(i) + pnt2=colend(i) + do j=pnt1,pnt2 + colidx(fpnt)=colidx(j) + colnzs(fpnt)=colnzs(j) + fpnt=fpnt+1 + enddo + iwrk3(i)=fpnt + endif + enddo + colpnt(1)=1 + do i=1,n + colbeg(i)=iwrk2(i) + colend(i)=iwrk3(i)-1 + colpnt(i+1)=colpnt(i)+iwrk1(i) + enddo + do j=1,pivotn + i=pivrow(j) + pnt1=rowbeg(i) + pnt2=rowend(i) + do k=pnt1,pnt2 + pnt=iwrk3(colidx(k)) + colidx(pnt)=i + colnzs(pnt)=colnzs(k) + iwrk3(colidx(k))=pnt+1 + enddo + enddo +c + do i=1,pivotn + prelen=prelen+1 + prehis(prelen)=pivcol(i) + colsta(pivcol(i))=-2-procn + prelen=prelen+1 + prehis(prelen)=pivrow(i)+n + rowsta(pivrow(i))=-2-procn + enddo + write(buff,'(1x,i5,a,i5,a)')pivotn,' row/cols eliminated, ', + x nfill,' fill-in created.' + call mprnt(buff) + nz=colpnt(n+1)-1 + if(cfree.lt.nz*2)then + code=-2 + write(buff,'(1x,a)')'Ran out of RERAL memory' + call mprnt(buff) + endif + endif +c + if(iand(prelev,256).gt.0)then + do i=1,m + rowend(i)=rowbeg(i)-1 + enddo + do i=1,n + if(colsta(i).gt.-2)then + pnt1=colbeg(i) + pnt2=colend(i) + do j=pnt1,pnt2 + rowend(colidx(j))=rowend(colidx(j))+1 + rowidx(rowend(colidx(j)))=i + colnzs(nz+rowend(colidx(j)))=colnzs(j) + enddo + endif + enddo + call sparser(n,n1,m,nz,colpnt,colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,colnzs(nz+1),colsta,rowsta,rhs,slktyp, + x mrk,mrk(n+1),tplus,tzer,redtol,reltol,abstol) + endif +c + 999 return + end +c +c ============================================================================ +c +c Numerically more stable version +c +c =========================================================================== +c + subroutine sparser(n,n1,m,nz,colpnt, + x colbeg,colend,colidx,colnzs, + x rowbeg,rowend,rowidx,rownzs, + x colsta,rowsta,rhs,slktyp, + x mark,rflag,tplus,tzer,redtol,reltol,abstol) +c + integer*4 n,n1,m,nz,colpnt(n1),colbeg(n),colend(n),colidx(nz), + x rowbeg(m),rowend(m),rowidx(nz),colsta(n),rowsta(m), + x rflag(m),mark(n),slktyp(m) + real*8 colnzs(nz),rownzs(nz),rhs(m), + x tplus,tzer,redtol,reltol,abstol +c + integer*4 i,j,k,pnt1,pnt2,rpnt1,rpnt2,row,col,prow,pcol, + x pnt,ppnt1,ppnt2,elim,total,totaln,iw,rowlen + real*8 pivot,nval,tol + character*99 buff +c +c --------------------------------------------------------------------------- +c + total=0 + totaln=0 + tol=1.0d+0/reltol + do i=1,m + if(rowsta(i).gt.-2)then + rflag(i)=0 + totaln=totaln+rowend(i)-rowbeg(i)+1 + else + rflag(i)=2 + endif + enddo + do i=1,n + mark(i)=0 + enddo +c + 100 elim=0 + do 20 row=1,m + if((rflag(row).lt.2).and.(slktyp(row).eq.0))then + iw=rflag(row) + pnt1=rowbeg(row) + pnt2=rowend(row) + rowlen=pnt2-pnt1 +c +c Select the shortest column +c + col=0 + k=m+1 + do j=pnt1,pnt2 + i=rowidx(j) + mark(i)=j + if(colend(i)-colbeg(i).lt.k)then + col=i + k=colend(i)-colbeg(i) + endif + enddo + if(col.eq.0)then + rflag(row)=1 + goto 20 + endif +c +c Scan the selected column +c + ppnt1=colbeg(col) + ppnt2=colend(col) + do 30 i=ppnt1,ppnt2 + prow=colidx(i) + rpnt1=rowbeg(prow) + rpnt2=rowend(prow) + if((rowlen.gt.rpnt2-rpnt1).or.(iw+rflag(prow).ge.2).or. + x (row.eq.prow))goto 30 + k=-1 + do pnt=rpnt1,rpnt2 + if(mark(rowidx(pnt)).gt.0)k=k+1 + enddo + if(k.ne.rowlen)goto 30 +c +c Select pivot +c + pcol=0 + pivot=tol + do pnt=rpnt1,rpnt2 + if(mark(rowidx(pnt)).gt.0)then + if(abs(rownzs(mark(rowidx(pnt)))).gt.abstol)then + nval=-rownzs(pnt)/rownzs(mark(rowidx(pnt))) + if(abs(nval).lt.abs(pivot))then + pivot=nval + pcol=rowidx(pnt) + endif + endif + endif + enddo + if(pcol.eq.0)goto 20 +c +c Transformation +c + rflag(prow)=0 + rhs(prow)=rhs(prow)+pivot*rhs(row) + do pnt=rpnt1,rpnt2 + if(mark(rowidx(pnt)).gt.0)then + nval=rownzs(pnt)+pivot*rownzs(mark(rowidx(pnt))) + if(abs(nval).lt.tplus*(abs(rownzs(pnt))))nval=0.0d+0 + rownzs(pnt)=nval + endif + enddo + do while (rpnt1.le.rpnt2) + if(abs(rownzs(rpnt1)).lt.tzer)then + k=rowidx(rpnt1) + rownzs(rpnt1)=rownzs(rpnt2) + rowidx(rpnt1)=rowidx(rpnt2) + rownzs(rpnt2)=0.0d+0 + rowidx(rpnt2)=k + rpnt2=rpnt2-1 + elim=elim+1 + else + rpnt1=rpnt1+1 + endif + enddo + rowend(prow)=rpnt2 + 30 continue + do j=pnt1,pnt2 + mark(rowidx(j))=0 + enddo + rflag(row)=1 + endif + 20 continue + total=total+elim + totaln=totaln-elim + if(dble(elim)/(dble(totaln)+1.0d+0).gt.redtol)goto 100 +c +c making modification in the column file +c + if(total.gt.0)then + do i=1,n + mark(i)=colbeg(i)-1 + enddo + do i=1,m + if(rowsta(i).gt.-2)then + pnt1=rowbeg(i) + pnt2=rowend(i) + do j=pnt1,pnt2 + col=rowidx(j) + mark(col)=mark(col)+1 + colidx(mark(col))=i + colnzs(mark(col))=rownzs(j) + enddo + endif + enddo + pnt=colpnt(1) + do i=1,n + iw=pnt + if(colsta(i).gt.-2)then + pnt1=colbeg(i) + pnt2=mark(i) + colbeg(i)=pnt + do j=pnt1,pnt2 + colnzs(pnt)=colnzs(j) + colidx(pnt)=colidx(j) + pnt=pnt+1 + enddo + pnt1=colend(i)+1 + colend(i)=pnt-1 + else + pnt1=colpnt(i) + endif + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + colnzs(pnt)=colnzs(j) + colidx(pnt)=colidx(j) + pnt=pnt+1 + enddo + colpnt(i)=iw + enddo + colpnt(n+1)=pnt + endif +c + write(buff,'(1x,i5,a)')total,' nonzeros eliminated' + call mprnt(buff) + return + end +c +c =========================================================================== +c =========================================================================== +c + subroutine elimin(m,n,nz,cfre,rfre, + x colbeg,ccol,rowbeg,crow,colidx,rowidx,colnzs,colsta,rowsta, + x obj,rhs,vartyp,slktyp,cpermf,cpermb,rpermf,rpermb,colcan, + x mark,cfill,rfill,workr,pivcol,pivrow,abstol,reltol,filtol, + x pivotn,nfill,addobj,pnt,code) +c + integer*4 m,n,nz,cfre,rfre,colbeg(n),ccol(n),rowbeg(m), + x crow(m),colidx(cfre),rowidx(rfre),colsta(n),rowsta(m), + x cpermf(n),cpermb(n),rpermf(m),rpermb(m),colcan(n),mark(m), + x cfill(n),rfill(m),pivcol(n),pivrow(m),pivotn,code,vartyp(n), + x slktyp(m),nfill,pnt + real*8 workr(m),obj(n),rhs(m),colnzs(cfre),abstol,reltol, + x filtol,addobj +c + integer*4 i,j,k,l,p,pnt1,pnt2,ppnt1,ppnt2,pcol,prow, + x fren,cfirst,rfirst,clast,rlast,endmem,prewcol,mn,fill, + x ccfre,rcfre,rpnt1,rpnt2,ii + real*8 pivot,s +c +c --------------------------------------------------------------------------- +c +c cpermf oszloplista elore lancolasa, fejmutato cfirst +c cpermb oszloplista hatra lancolasa, fejmutato clast +c rpermf sorlista elore lancolase, fejmutato rfirst +c rpermb sorlista hatra lancolasa, fejmutato rlast +c colcan lehetseges pivot oszlopok +c ccol oszlopszamlalok +c crow sorszamlalok (vcstat) +c colbeg oszlopmutatok +c rowbeg sormutatok +c mark eliminacios integer segedtomb +c workr eliminacios real segedtomb +c cfill a sorfolytonos tarolas update-elesehez segedtomb +c rfill a sorfolytonos tarolas update-elesehez segedtomb +c pivcol +c pivrow +c +c -------------------------------------------------------------------------- + pivot=0 + ppnt1=0 +c +c initialization +c + nfill=0 + mn=m+n + endmem=cfre + fren =0 + pivotn=0 + cfirst=0 + clast =0 + rfirst=0 + rlast =0 + do i=1,n + if(colsta(i).gt.-2)then + if(cfirst.eq.0)then + cfirst=i + else + cpermf(clast)=i + endif + cpermb(i)=clast + clast=i + ccol(i)=ccol(i)-colbeg(i)+1 + if(vartyp(i).eq.0)then + fren=fren+1 + colcan(fren)=i + endif + endif + enddo +C CMSSW: Bugfix for an empty matrix, where now clast=0 causes an invalid +C memory access + if(clast.ne.0)then + cpermf(clast)=0 + endif + do i=1,m + mark(i)=0 + if(rowsta(i).gt.-2)then + if(rfirst.eq.0)then + rfirst=i + else + rpermf(rlast)=i + endif + rpermb(i)=rlast + rlast=i + crow(i)=crow(i)-rowbeg(i)+1 + endif + enddo + rpermf(rlast)=0 +c +c Elimination loop +c + 50 pcol=0 + prow=0 + i=-1 +c +c Find pivot +c + do ii=1,fren + p=colcan(ii) + pnt1=colbeg(p) + pnt2=pnt1+ccol(p)-1 + s=0.0d+0 + do j=pnt1,pnt2 + if(s.lt.abs(colnzs(j)))s=abs(colnzs(j)) + enddo + s=s*reltol + do j=pnt1,pnt2 + if(slktyp(colidx(j)).eq.0)then + if(abs(colnzs(j)).gt.abstol)then + k=(ccol(p)-1)*(crow(colidx(j))-1) + if(dble(k).lt.filtol*dble(ccol(p)+crow(colidx(j))-1))then + if((i.lt.0).or.(k.lt.i))then + if(abs(colnzs(j)).gt.s)then + i=k + pcol=p + prow=colidx(j) + pivot=colnzs(j) + ppnt1=ii + endif + else if((k.eq.i).and.(abs(pivot).lt.abs(colnzs(j))))then + pcol=p + prow=colidx(j) + pivot=colnzs(j) + ppnt1=ii + endif + endif + endif + endif + enddo + enddo + if (pcol.eq.0)goto 900 + colcan(ppnt1)=colcan(fren) + fren=fren-1 + pivot=1.0d+0/pivot + rcfre=rfre-rowbeg(rlast)-crow(rlast) + ccfre=endmem-colbeg(clast)-ccol(clast) +c +c compress column file +c + if(ccfre.lt.mn)then + call ccomprs(mn,cfre,ccfre,endmem,nz, + x colbeg,ccol,cfirst,cpermf,colidx,colnzs,code) + if(code.lt.0)goto 999 + endif +c +c remove pcol from the cpermf lists +c + j=cpermb(pcol) + i=cpermf(pcol) + if(j.ne.0)then + cpermf(j)=i + else + cfirst=i + endif + if(i.eq.0)then + clast=j + else + cpermb(i)=j + endif +c +c remove prow from the rpermf lists +c + j=rpermb(prow) + i=rpermf(prow) + if(j.ne.0)then + rpermf(j)=i + else + rfirst=i + endif + if(i.eq.0)then + rlast=j + else + rpermb(i)=j + endif +c +c administration +c + pivotn=pivotn+1 + pivcol(pivotn)=pcol + pivrow(pivotn)=prow + addobj=addobj+obj(pcol)*rhs(prow)*pivot +c +c Create pivot column +c + pnt1=colbeg(pcol) + pnt2=pnt1+ccol(pcol)-1 + ppnt1=endmem-ccol(pcol) + ppnt2=ppnt1+ccol(pcol)-1 + pnt=ppnt1 + do j=pnt1,pnt2 + k=colidx(j) + mark(k)=1 + colidx(pnt)=k + colnzs(pnt)=colnzs(j) + if(k.eq.prow)then + p=pnt + workr(k)=pivot + else + workr(k)=-colnzs(j)*pivot + rhs(k)=rhs(k)+rhs(prow)*workr(k) + endif + pnt=pnt+1 +c + i=rowbeg(k) + do while(rowidx(i).ne.pcol) + i=i+1 + enddo + rowidx(i)=rowidx(rowbeg(k)+crow(k)-1) + rfill(k)=-1 + enddo +c + colbeg(pcol)=ppnt1 + j=colidx(ppnt1) + s=colnzs(ppnt1) + colidx(ppnt1)=colidx(p) + colnzs(ppnt1)=colnzs(p) + colidx(p)=j + colnzs(p)=s + ppnt1=ppnt1+1 +c +c create pivot row +c + pnt1=rowbeg(prow) + crow(prow)=crow(prow)-1 + pnt2=pnt1+crow(prow)-1 + rowbeg(prow)=colbeg(pcol)-crow(prow) + pnt=rowbeg(prow) + do i=pnt1,pnt2 + k=rowidx(i) + j=colbeg(k) + do while(colidx(j).ne.prow) + j=j+1 + enddo + colidx(pnt)=k + colnzs(pnt)=colnzs(j) + pnt=pnt+1 + colidx(j)=colidx(colbeg(k)+ccol(k)-1) + colnzs(j)=colnzs(colbeg(k)+ccol(k)-1) + cfill(k)=ccol(k)-1 + enddo + endmem=endmem-ccol(pcol)-crow(prow) + ccfre=ccfre-ccol(pcol)-crow(prow) +c +c elimination loop +c + rpnt1=rowbeg(prow) + rpnt2=rpnt1+crow(prow)-1 + do p=rpnt1,rpnt2 + i=colidx(p) + s=colnzs(p) + obj(i)=obj(i)-s*obj(pcol)*pivot + fill=ccol(pcol)-1 + pnt1=colbeg(i) + pnt2=pnt1+cfill(i)-1 + do j=pnt1,pnt2 + k=colidx(j) + if(mark(k).ne.0)then + colnzs(j)=colnzs(j)+s*workr(k) + fill=fill-1 + mark(k)=0 + endif + enddo +c +c compute the free space +c + j=cpermf(i) + if(j.eq.0)then + k=endmem-pnt2-1 + else + k=colbeg(j)-pnt2-1 + endif +c +c move column to the end of the column file +c + if(fill.gt.k)then + if (ccfre.lt.m)then + call ccomprs(mn,cfre,ccfre,endmem,nz, + x colbeg,ccol,cfirst,cpermf,colidx,colnzs,code) + if(code.lt.0)goto 999 + pnt1=colbeg(i) + pnt2=pnt1+cfill(i)-1 + endif + if(i.ne.clast)then + j=colbeg(clast)+ccol(clast) + colbeg(i)=j + do k=pnt1,pnt2 + colidx(j)=colidx(k) + colnzs(j)=colnzs(k) + j=j+1 + enddo + pnt1=colbeg(i) + pnt2=j-1 + k=cpermf(i) + j=cpermb(i) + if(j.eq.0)then + cfirst=k + else + cpermf(j)=k + endif + cpermb(k)=j + cpermf(clast)=i + cpermb(i)=clast + clast=i + cpermf(clast)=0 + endif + endif +c +c create fill-in +c + do k=ppnt1,ppnt2 + j=colidx(k) + if(mark(j).eq.0)then + mark(j)=1 + else + pnt2=pnt2+1 + colnzs(pnt2)=s*workr(j) + colidx(pnt2)=j + rfill(j)=rfill(j)+1 + endif + enddo + ccol(i)=pnt2-pnt1+1 + if(i.eq.clast)then + ccfre=endmem-pnt2 + endif + enddo +c +c make space for fills in the row file +c + do j=ppnt1,ppnt2 + i=colidx(j) + mark(i)=0 +c +c compute the free space +c + pnt2=rowbeg(i)+crow(i)-1 + p=rpermf(i) + if(p.eq.0)then + k=rfre-pnt2-1 + else + k=rowbeg(p)-pnt2-1 + endif +c +c move row to the end of the row file +c + if(k.lt.rfill(i))then + if(rcfre.lt.n)then + call rcomprs(mn,rfre, + x rcfre,rowbeg,crow,rfirst,rpermf,rowidx,code) + if(code.lt.0)goto 999 + endif + if(p.ne.0)then + pnt1=rowbeg(i) + pnt2=pnt1+crow(i)-1 + pnt=rowbeg(rlast)+crow(rlast) + rowbeg(i)=pnt + do l=pnt1,pnt2 + rowidx(pnt)=rowidx(l) + pnt=pnt+1 + enddo + prewcol=rpermb(i) + if(prewcol.eq.0)then + rfirst=p + else + rpermf(prewcol)=p + endif + rpermb(p)=prewcol + rpermf(rlast)=i + rpermb(i)=rlast + rlast=i + rpermf(rlast)=0 + endif + endif + crow(i)=crow(i)+rfill(i) + if(i.eq.rlast)rcfre=rfre-crow(i)-rowbeg(i) + nfill=nfill+rfill(i)+1 + enddo +c +c make pointers to the end of the filled rows +c + do j=ppnt1,ppnt2 + rfill(colidx(j))=rowbeg(colidx(j))+crow(colidx(j))-1 + enddo +c +c generate fill-in the row file +c + do j=rpnt1,rpnt2 + i=colidx(j) + pnt1=colbeg(i)+cfill(i) + pnt2=colbeg(i)+ccol(i)-1 + do k=pnt1,pnt2 + rowidx(rfill(colidx(k)))=i + rfill(colidx(k))=rfill(colidx(k))-1 + enddo + enddo + goto 50 +c +c End of the elimination, compress arrays +c + 900 call rcomprs(mn,rfre,rcfre,rowbeg,crow,rfirst,rpermf,rowidx,code) + pnt=endmem + i=clast + do while(i.ne.0) + pnt1=colbeg(i) + pnt2=pnt1+ccol(i)-1 + do j=pnt2,pnt1,-1 + pnt=pnt-1 + colidx(pnt)=colidx(j) + colnzs(pnt)=colnzs(j) + enddo + colbeg(i)=pnt + i=cpermb(i) + enddo +c +c Make pointers form counters +c + do i=1,n + ccol(i)=colbeg(i)+ccol(i)-1 + enddo + do i=1,m + crow(i)=rowbeg(i)+crow(i)-1 + enddo + 999 return + end +c +c =========================================================================== +c This is a POSTSOLV procedure +c +c ======================================================================== +c + subroutine pstsol(colpnt,colidx,colnzs,colsta,rowsta, + x vartyp,slktyp,upb,lob,ups,los,rhs,obj,xs, + x status,rowval,prehis,prelen,big) +c + common/dims/ n,n1,m,mn,nz,cfree,pivotn,denwin,rfree + integer*4 n,n1,m,mn,nz,cfree,pivotn,denwin,rfree +c + integer*4 colpnt(n1),colidx(nz),colsta(n),rowsta(m), + x prehis(mn),prelen,vartyp(n),slktyp(m),status(mn) + real*8 colnzs(nz),upb(n),lob(n),ups(m),los(m), + x rhs(m),obj(n),rowval(m),xs(n),big +c + integer*4 i,j,k,l,p,pnt1,pnt2,row,col + real*8 sol,lo1,lo2,up1,up2,lbig,sol1,sol2,s +c +C CMSSW: Explicit initialization needed + sol=0 + + lbig=0.9d+0*big + do i=1,mn + if(i.le.n)then + j=colsta(i) + else + j=rowsta(i-n) + endif + if(j.eq.-3)then + status(i)=0 + else + status(i)=prelen+1 + endif + enddo +c + do i=1,prelen + status(prehis(i))=i + enddo +c + do i=1,m + rowval(i)=0.0d+0 + if(abs(slktyp(i)).eq.2)rhs(i)=-rhs(i) + enddo +c + do i=1,n + pnt1=colpnt(i) + pnt2=colpnt(i+1)-1 + do j=pnt1,pnt2 + if(abs(slktyp(colidx(j))).eq.2)then + colnzs(j)=-colnzs(j) + endif + enddo + if((status(i).gt.prelen).or.(status(i).eq.0))then + if(vartyp(i).ne.0)then + if(upb(i).lt.lbig)upb(i)=upb(i)+lob(i) + xs(i)=xs(i)+lob(i) + do j=pnt1,pnt2 + rhs(colidx(j))=rhs(colidx(j))+colnzs(j)*lob(i) + enddo + endif + if(abs(vartyp(i)).eq.2)then + obj(i)=-obj(i) + upb(i)=-lob(i) + lob(i)=-big + xs(i)=-xs(i) + do j=pnt1,pnt2 + colnzs(j)=-colnzs(j) + enddo + endif + do j=pnt1,pnt2 + rowval(colidx(j))=rowval(colidx(j))+xs(i)*colnzs(j) + enddo + endif + enddo +c + i=prelen + do while(i.ge.1) + j=prehis(i) + if(j.le.n)then + k=-colsta(j)-2 + if((k.eq.1).or.(k.eq.3).or.(k.eq.5).or.(k.eq.6))then + sol=lob(j) + xs(j)=sol + else if((k.eq.2).or.(k.eq.8))then + row=prehis(i+1)-n + l=colpnt(j) + do while(l.lt.colpnt(j+1)) + if(colidx(l).eq.row)then + sol=colnzs(l) + l=colpnt(j+1) + endif + l=l+1 + enddo + sol=(rhs(row)-rowval(row))/sol + xs(j)=sol + else if(k.eq.4)then + k=0 + sol1=lob(j) + sol2=upb(j) + p=i+1 + do while ((p.le.prelen).and.(prehis(p).gt.n).and. + x (-rowsta(prehis(p)-n)-2.eq.4)) + row=prehis(p)-n + l=colpnt(j) + do while(l.lt.colpnt(j+1)) + if(colidx(l).eq.row)then + sol=colnzs(l) + l=colpnt(j+1) + endif + l=l+1 + enddo + if(los(row).gt.-lbig)then + s=(rhs(row)-rowval(row)+los(row))/sol + if((sol.gt.0.0d+0).and.(s.gt.sol1))then + k=1 + sol1=s + endif + if((sol.lt.0.0d+0).and.(s.lt.sol2))then + k=2 + sol2=s + endif + endif + if(ups(row).lt.lbig)then + s=(rhs(row)-rowval(row)+ups(row))/sol + if((sol.gt.0.0d+0).and.(s.lt.sol2))then + k=2 + sol2=s + endif + if((sol.lt.0.0d+0).and.(s.gt.sol1))then + k=1 + sol1=s + endif + endif + p=p+1 + enddo + if(k.eq.1)sol=sol1 + if(k.eq.2)sol=sol2 + if(k.eq.0)then + sol=sol1 + if(sol.lt.-lbig)sol=sol2 + if(sol.gt.lbig)sol=0.0d+0 + endif + xs(j)=sol + else if(k.gt.17)then + col=k-17 + if((vartyp(j).eq.4).or.(vartyp(j).eq.12))then + lo2=-big + lo1=lob(j) + else + lo2=lob(j) + if((lo2.gt.-lbig).and.(lob(col).gt.-lbig))then + lo1=lob(col)-lo2 + else + lo1=-big + endif + endif + if((vartyp(j).eq.8).or.(vartyp(j).eq.12))then + up2=big + up1=upb(j) + else + up2=upb(j) + if((up2.lt.lbig).and.(upb(col).lt.lbig))then + up1=upb(col)-up2 + else + up1=big + endif + endif + lob(col)=lo1 + upb(col)=up1 + sol=0.0d+0 + if(sol.lt.lo2)sol=lo2 + if(sol.gt.up2)sol=up2 + if(xs(col)-sol.lt.lo1)sol=xs(col)-lo1 + if(xs(col)-sol.gt.up1)sol=xs(col)-up1 + xs(j)=sol*obj(j) + xs(col)=xs(col)-sol + sol=0.0d+0 + endif + l=colpnt(j) + do while(l.lt.colpnt(j+1)) + row=colidx(l) + if(status(row+n).gt.status(j))then + rhs(row)=rhs(row)+colnzs(l)*sol + else + rowval(row)=rowval(row)+colnzs(l)*sol + endif + l=l+1 + enddo + endif + i=i-1 + enddo +c + return + end +c +c ============================================================================ + subroutine mprnt(buff) + character*99 buff + common/logprt/ loglog,lfile + integer*4 loglog,lfile +c + 1 format(a79) + if((loglog.eq.1).or.(loglog.eq.3))then + write(*,1)buff + endif + if((loglog.eq.2).or.(loglog.eq.3))then + write(lfile,1)buff + endif +c + return + end +c ========================================================================== +c + subroutine timer(i) + implicit none + integer*4 i + real t +c +c -------------------------------------------------------------------------- +c +c Implementation based on the Fortran 95 cpu_time() + call cpu_time(t) + i=nint(t*100.0) + end +c +c ========================================================================= diff --git a/RecoHI/HiJetAlgos/test/step3_RAW2DIGI_L1Reco_RECO_VALIDATION_DQM.py b/RecoHI/HiJetAlgos/test/step3_RAW2DIGI_L1Reco_RECO_VALIDATION_DQM.py new file mode 100644 index 0000000000000..10c932ae906c4 --- /dev/null +++ b/RecoHI/HiJetAlgos/test/step3_RAW2DIGI_L1Reco_RECO_VALIDATION_DQM.py @@ -0,0 +1,100 @@ +# Auto generated configuration file +# using: +# Revision: 1.19 +# Source: /local/reps/CMSSW/CMSSW/Configuration/Applications/python/ConfigBuilder.py,v +# with command line options: step3 --datatier GEN-SIM-RECO,DQMIO --conditions auto:starthi_HIon -s RAW2DIGI,L1Reco,RECO,VALIDATION,DQM --scenario HeavyIons --eventcontent RECOSIM,DQM -n 100 --no_exec +import FWCore.ParameterSet.Config as cms + +process = cms.Process('RECO') + +# import of standard configurations +process.load('Configuration.StandardSequences.Services_cff') +process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi') +process.load('FWCore.MessageService.MessageLogger_cfi') +process.load('Configuration.EventContent.EventContentHeavyIons_cff') +process.load('SimGeneral.MixingModule.mixNoPU_cfi') +process.load('Configuration.StandardSequences.GeometryRecoDB_cff') +process.load('Configuration.StandardSequences.MagneticField_38T_cff') +process.load('Configuration.StandardSequences.RawToDigi_cff') +process.load('Configuration.StandardSequences.L1Reco_cff') +process.load('Configuration.StandardSequences.ReconstructionHeavyIons_cff') +process.load('Configuration.StandardSequences.ValidationHeavyIons_cff') +process.load('DQMOffline.Configuration.DQMOfflineHeavyIonsMC_cff') +process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') + +process.maxEvents = cms.untracked.PSet( + input = cms.untracked.int32(5) +) + +# Input source +process.source = cms.Source("PoolSource", + secondaryFileNames = cms.untracked.vstring(), + fileNames = cms.untracked.vstring('/store/relval/CMSSW_7_2_0_pre5/RelValHydjetQ_MinBias_2760GeV/GEN-SIM-DIGI-RAW-HLTDEBUG/STARTHI72_V1-v1/00000/CE04360B-DB2F-E411-8AA5-02163E00FEB9.root') +) + +process.options = cms.untracked.PSet( + +) + +# Production Info +process.configurationMetadata = cms.untracked.PSet( + version = cms.untracked.string('$Revision: 1.19 $'), + annotation = cms.untracked.string('step3 nevts:100'), + name = cms.untracked.string('Applications') +) + +# Output definition + +process.RECOSIMoutput = cms.OutputModule("PoolOutputModule", + splitLevel = cms.untracked.int32(0), + eventAutoFlushCompressedSize = cms.untracked.int32(5242880), + outputCommands = process.RECOSIMEventContent.outputCommands, + fileName = cms.untracked.string('step3_RAW2DIGI_L1Reco_RECO_VALIDATION_DQM.root'), + dataset = cms.untracked.PSet( + filterName = cms.untracked.string(''), + dataTier = cms.untracked.string('GEN-SIM-RECO') + ) +) + +process.DQMoutput = cms.OutputModule("DQMRootOutputModule", + splitLevel = cms.untracked.int32(0), + outputCommands = process.DQMEventContent.outputCommands, + fileName = cms.untracked.string('step3_RAW2DIGI_L1Reco_RECO_VALIDATION_DQM_inDQM.root'), + dataset = cms.untracked.PSet( + filterName = cms.untracked.string(''), + dataTier = cms.untracked.string('DQMIO') + ) +) + +# Additional output definition + +# Other statements +process.mix.playback = True +process.mix.digitizers = cms.PSet() +for a in process.aliases: delattr(process, a) +process.RandomNumberGeneratorService.restoreStateLabel=cms.untracked.string("randomEngineStateProducer") +from Configuration.AlCa.GlobalTag import GlobalTag +process.GlobalTag = GlobalTag(process.GlobalTag, 'STARTHI72_V1::All', '') + +# Path and EndPath definitions +process.raw2digi_step = cms.Path(process.RawToDigi) +process.L1Reco_step = cms.Path(process.L1Reco) +process.reconstruction_step = cms.Path(process.reconstructionHeavyIons) +process.prevalidation_step = cms.Path(process.prevalidation) +process.dqmoffline_step = cms.Path(process.DQMOfflineHeavyIons) +process.validation_step = cms.EndPath(process.validation) +process.RECOSIMoutput_step = cms.EndPath(process.RECOSIMoutput) +process.DQMoutput_step = cms.EndPath(process.DQMoutput) + + +# Schedule definition +process.schedule = cms.Schedule(process.raw2digi_step,process.L1Reco_step,process.reconstruction_step,process.prevalidation_step,process.validation_step,process.dqmoffline_step,process.RECOSIMoutput_step,process.DQMoutput_step) + + +# Automatic addition of the customisation function from SimGeneral.MixingModule.fullMixCustomize_cff +from SimGeneral.MixingModule.fullMixCustomize_cff import setCrossingFrameOn + +#call to customisation function setCrossingFrameOn imported from SimGeneral.MixingModule.fullMixCustomize_cff +process = setCrossingFrameOn(process) + +# End of customisation functions diff --git a/RecoHI/HiMuonAlgos/python/HiRecoMuon_cff.py b/RecoHI/HiMuonAlgos/python/HiRecoMuon_cff.py index bf382638fabe8..07a0dcf9001af 100644 --- a/RecoHI/HiMuonAlgos/python/HiRecoMuon_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRecoMuon_cff.py @@ -2,13 +2,14 @@ from RecoMuon.Configuration.RecoMuonPPonly_cff import * -hiTracks = 'hiSelectedTracks' #heavy ion track label +hiTracks = 'hiGeneralTracks' #heavy ion track label # replace with heavy ion track label muons = muons1stStep.clone() muons.inputCollectionLabels = [hiTracks, 'globalMuons', 'standAloneMuons:UpdatedAtVtx','tevMuons:firstHit','tevMuons:picky','tevMuons:dyt'] muons.inputCollectionTypes = ['inner tracks', 'links', 'outer tracks','tev firstHit', 'tev picky', 'tev dyt'] muons.TrackExtractorPSet.inputTrackCollection = hiTracks +muons.minPt = cms.double(0.8) #muons.fillGlobalTrackRefits = False muonEcalDetIds.inputCollection = "muons" diff --git a/RecoHI/HiMuonAlgos/python/HiReRecoMuon_cff.py b/RecoHI/HiMuonAlgos/python/HiRegionalRecoMuon_cff.py similarity index 97% rename from RecoHI/HiMuonAlgos/python/HiReRecoMuon_cff.py rename to RecoHI/HiMuonAlgos/python/HiRegionalRecoMuon_cff.py index c6cb290020fb4..cf12979e6a776 100644 --- a/RecoHI/HiMuonAlgos/python/HiReRecoMuon_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRegionalRecoMuon_cff.py @@ -69,4 +69,4 @@ reMuonTrackRecoPbPb = cms.Sequence(muontracking_re) # HI muon sequence (passed to RecoHI.Configuration.Reconstruction_HI_cff) -reMuonRecoPbPb = cms.Sequence(muonreco_plus_isolation_re) +regionalMuonRecoPbPb = cms.Sequence(muonreco_plus_isolation_re) diff --git a/RecoHI/HiMuonAlgos/python/HiRegitMuonDetachedTripletStep_cff.py b/RecoHI/HiMuonAlgos/python/HiRegitMuonDetachedTripletStep_cff.py index 44763a89a19fe..9587b97266874 100644 --- a/RecoHI/HiMuonAlgos/python/HiRegitMuonDetachedTripletStep_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRegitMuonDetachedTripletStep_cff.py @@ -26,7 +26,7 @@ ) # SEEDING LAYERS -hiRegitMuDetachedTripletStepSeedLayers = RecoHI.HiTracking.hiRegitDetachedTripletStep_cff.hiRegitDetachedTripletStepSeedLayers.clone() +hiRegitMuDetachedTripletStepSeedLayers = RecoHI.HiTracking.hiRegitDetachedTripletStep_cff.hiRegitDetachedTripletStepSeedLayers.clone() hiRegitMuDetachedTripletStepSeedLayers.BPix.skipClusters = cms.InputTag('hiRegitMuDetachedTripletStepClusters') hiRegitMuDetachedTripletStepSeedLayers.FPix.skipClusters = cms.InputTag('hiRegitMuDetachedTripletStepClusters') @@ -48,13 +48,14 @@ hiRegitMuDetachedTripletStepTrajectoryFilter.minPt = 0.8 # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = cms.int32(3), hiRegitMuDetachedTripletStepTrajectoryBuilder = RecoHI.HiTracking.hiRegitDetachedTripletStep_cff.hiRegitDetachedTripletStepTrajectoryBuilder.clone( - trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuDetachedTripletStepTrajectoryFilter')), + trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuDetachedTripletStepTrajectoryFilter')), clustersToSkip = cms.InputTag('hiRegitMuDetachedTripletStepClusters') ) hiRegitMuDetachedTripletStepTrackCandidates = RecoHI.HiTracking.hiRegitDetachedTripletStep_cff.hiRegitDetachedTripletStepTrackCandidates.clone( src = cms.InputTag('hiRegitMuDetachedTripletStepSeeds'), - TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiRegitMuDetachedTripletStepTrajectoryBuilder')) + TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiRegitDetachedTripletStepTrajectoryBuilder')), + maxNSeeds=100000 ) # fitting: feed new-names diff --git a/RecoHI/HiMuonAlgos/python/HiRegitMuonInitialStep_cff.py b/RecoHI/HiMuonAlgos/python/HiRegitMuonInitialStep_cff.py index cff26f6ad0899..439a72f81614e 100644 --- a/RecoHI/HiMuonAlgos/python/HiRegitMuonInitialStep_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRegitMuonInitialStep_cff.py @@ -51,12 +51,11 @@ # building: feed the new-named seeds -hiRegitMuInitialStepTrajectoryFilter = RecoHI.HiTracking.hiRegitInitialStep_cff.hiRegitInitialStepTrajectoryFilter.clone() +hiRegitMuInitialStepTrajectoryFilter = RecoHI.HiTracking.hiRegitInitialStep_cff.hiRegitInitialStepTrajectoryFilter.clone() hiRegitMuInitialStepTrajectoryFilter.minPt = 2.5 # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = cms.int32(3), - hiRegitMuInitialStepTrajectoryBuilder = RecoHI.HiTracking.hiRegitInitialStep_cff.hiRegitInitialStepTrajectoryBuilder.clone( - trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuInitialStepTrajectoryFilter')), + trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuInitialStepTrajectoryFilter')), clustersToSkip = cms.InputTag('hiRegitMuInitialStepClusters') ) diff --git a/RecoHI/HiMuonAlgos/python/HiRegitMuonLowPtTripletStep_cff.py b/RecoHI/HiMuonAlgos/python/HiRegitMuonLowPtTripletStep_cff.py index dd85efe2c4f58..3e8f58dd5c0c7 100644 --- a/RecoHI/HiMuonAlgos/python/HiRegitMuonLowPtTripletStep_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRegitMuonLowPtTripletStep_cff.py @@ -40,10 +40,9 @@ import RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi hiRegitMuLowPtTripletStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor - # building: feed the new-named seeds hiRegitMuLowPtTripletStepTrajectoryFilter = RecoHI.HiTracking.hiRegitLowPtTripletStep_cff.hiRegitLowPtTripletStepTrajectoryFilter.clone() -hiRegitMuLowPtTripletStepTrajectoryFilter.minPt = 0.8 # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = cms.int32(3), +hiRegitMuLowPtTripletStepTrajectoryFilter.minPt = 0.8 # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = cms.int32(3), hiRegitMuLowPtTripletStepTrajectoryBuilder = RecoHI.HiTracking.hiRegitLowPtTripletStep_cff.hiRegitLowPtTripletStepTrajectoryBuilder.clone( @@ -54,7 +53,7 @@ # track candidates hiRegitMuLowPtTripletStepTrackCandidates = RecoHI.HiTracking.hiRegitLowPtTripletStep_cff.hiRegitLowPtTripletStepTrackCandidates.clone( src = cms.InputTag('hiRegitMuLowPtTripletStepSeeds'), - TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiRegitMuLowPtTripletStepTrajectoryBuilder')), + TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiRegitLowPtTripletStepTrajectoryBuilder')), maxNSeeds = cms.uint32(1000000) ) @@ -70,17 +69,14 @@ trackSelectors= cms.VPSet( RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone( name = 'hiRegitMuLowPtTripletStepLoose', - # minNumberLayers = 10 ), #end of pset RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone( name = 'hiRegitMuLowPtTripletStepTight', preFilterName = 'hiRegitMuLowPtTripletStepLoose', - # minNumberLayers = 10 ), RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone( name = 'hiRegitMuLowPtTripletStep', preFilterName = 'hiRegitMuLowPtTripletStepTight', - # minNumberLayers = 10 ), ) #end of vpset ) diff --git a/RecoHI/HiMuonAlgos/python/HiRegitMuonMixedTripletStep_cff.py b/RecoHI/HiMuonAlgos/python/HiRegitMuonMixedTripletStep_cff.py index 165f0aa6c54e7..40a9ef44fdba9 100644 --- a/RecoHI/HiMuonAlgos/python/HiRegitMuonMixedTripletStep_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRegitMuonMixedTripletStep_cff.py @@ -68,20 +68,20 @@ hiRegitMuMixedTripletStepTrajectoryFilter = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrajectoryFilter.clone() hiRegitMuMixedTripletStepTrajectoryFilter.minPt = 1. hiRegitMuMixedTripletStepTrajectoryFilter.minimumNumberOfHits = 6 -hiRegitMuMixedTripletStepTrajectoryFilter.minHitsMinPt = 4 +hiRegitMuMixedTripletStepTrajectoryFilter.minHitsMinPt = 4 # after each new hit, apply pT cut for traj w/ at least minHitsMinPt = cms.int32(3), hiRegitMuMixedTripletStepTrajectoryBuilder = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrajectoryBuilder.clone( - trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuMixedTripletStepTrajectoryFilter')), + trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuMixedTripletStepTrajectoryFilter')), clustersToSkip = cms.InputTag('hiRegitMuMixedTripletStepClusters'), minNrOfHitsForRebuild = 6 #change from default 4 ) hiRegitMuMixedTripletStepTrackCandidates = RecoTracker.IterativeTracking.MixedTripletStep_cff.mixedTripletStepTrackCandidates.clone( src = cms.InputTag('hiRegitMuMixedTripletStepSeeds'), - TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiRegitMuMixedTripletStepTrajectoryBuilder')), + TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiMixedTripletTrajectoryBuilder')), maxNSeeds = cms.uint32(1000000) ) @@ -112,11 +112,11 @@ ) #end of clone hiRegitMuonMixedTripletStep = cms.Sequence(hiRegitMuMixedTripletStepClusters* - hiRegitMuMixedTripletStepSeedLayersA* - hiRegitMuMixedTripletStepSeedsA* - hiRegitMuMixedTripletStepSeedLayersB* - hiRegitMuMixedTripletStepSeedsB* - hiRegitMuMixedTripletStepSeeds* - hiRegitMuMixedTripletStepTrackCandidates* - hiRegitMuMixedTripletStepTracks* - hiRegitMuMixedTripletStepSelector) + hiRegitMixedTripletStepSeedLayersA* + hiRegitMuMixedTripletStepSeedsA* + hiRegitMixedTripletStepSeedLayersB* + hiRegitMuMixedTripletStepSeedsB* + hiRegitMuMixedTripletStepSeeds* + hiRegitMuMixedTripletStepTrackCandidates* + hiRegitMuMixedTripletStepTracks* + hiRegitMuMixedTripletStepSelector) diff --git a/RecoHI/HiMuonAlgos/python/HiRegitMuonPixelLessStep_cff.py b/RecoHI/HiMuonAlgos/python/HiRegitMuonPixelLessStep_cff.py index d87dc9e6be019..cb74d8f7ccdfc 100644 --- a/RecoHI/HiMuonAlgos/python/HiRegitMuonPixelLessStep_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRegitMuonPixelLessStep_cff.py @@ -43,12 +43,12 @@ # building: feed the new-named seeds hiRegitMuPixelLessStepTrajectoryFilter = RecoTracker.IterativeTracking.PixelLessStep_cff.pixelLessStepTrajectoryFilter.clone() -hiRegitMuPixelLessStepTrajectoryFilter.minPt = 1.7 -hiRegitMuPixelLessStepTrajectoryFilter.minimumNumberOfHits = 6 -hiRegitMuPixelLessStepTrajectoryFilter.minHitsMinPt = 4 +hiRegitMuPixelLessStepTrajectoryFilter.minPt = 1.7 +hiRegitMuPixelLessStepTrajectoryFilter.minimumNumberOfHits = 6 +hiRegitMuPixelLessStepTrajectoryFilter.minHitsMinPt = 4 hiRegitMuPixelLessStepTrajectoryBuilder = RecoTracker.IterativeTracking.PixelLessStep_cff.pixelLessStepTrajectoryBuilder.clone( - trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuPixelLessStepTrajectoryFilter')), + trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuPixelLessStepTrajectoryFilter')), clustersToSkip = cms.InputTag('hiRegitMuPixelLessStepClusters'), minNrOfHitsForRebuild = 6 #change from default 4 ) diff --git a/RecoHI/HiMuonAlgos/python/HiRegitMuonPixelPairStep_cff.py b/RecoHI/HiMuonAlgos/python/HiRegitMuonPixelPairStep_cff.py index 2924ddaf6af16..fc8448d29b347 100644 --- a/RecoHI/HiMuonAlgos/python/HiRegitMuonPixelPairStep_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRegitMuonPixelPairStep_cff.py @@ -45,16 +45,15 @@ # building: feed the new-named seeds -hiRegitMuPixelPairStepTrajectoryFilter = RecoHI.HiTracking.hiRegitPixelPairStep_cff.hiRegitPixelPairStepTrajectoryFilter.clone() -hiRegitMuPixelPairStepTrajectoryFilter.minPt = 0.8 -hiRegitMuPixelPairStepTrajectoryFilter.minimumNumberOfHits = 6 -hiRegitMuPixelPairStepTrajectoryFilter.minHitsMinPt = 4 +hiRegitMuPixelPairStepTrajectoryFilter = RecoHI.HiTracking.hiRegitPixelPairStep_cff.hiRegitPixelPairStepTrajectoryFilter.clone() +hiRegitMuPixelPairStepTrajectoryFilter.minPt = 0.8 +hiRegitMuPixelPairStepTrajectoryFilter.minimumNumberOfHits = 6 +hiRegitMuPixelPairStepTrajectoryFilter.minHitsMinPt = 4 hiRegitMuPixelPairStepTrajectoryBuilder = RecoHI.HiTracking.hiRegitPixelPairStep_cff.hiRegitPixelPairStepTrajectoryBuilder.clone( - trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuPixelPairStepTrajectoryFilter')), - clustersToSkip = cms.InputTag('hiRegitMuPixelPairStepClusters'), + trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuPixelPairStepTrajectoryFilter')), minNrOfHitsForRebuild = 6 #change from default 4 ) @@ -90,7 +89,7 @@ ) hiRegitMuonPixelPairStep = cms.Sequence(hiRegitMuPixelPairStepClusters* - hiRegitMuPixelPairStepSeedLayers* + hiRegitPixelPairStepSeedLayers* hiRegitMuPixelPairStepSeeds* hiRegitMuPixelPairStepTrackCandidates* hiRegitMuPixelPairStepTracks* diff --git a/RecoHI/HiMuonAlgos/python/HiRegitMuonTobTecStep_cff.py b/RecoHI/HiMuonAlgos/python/HiRegitMuonTobTecStep_cff.py index 6dbdbab9dadf5..6fec7c9c5321c 100644 --- a/RecoHI/HiMuonAlgos/python/HiRegitMuonTobTecStep_cff.py +++ b/RecoHI/HiMuonAlgos/python/HiRegitMuonTobTecStep_cff.py @@ -24,14 +24,14 @@ ) # SEEDING LAYERS -hiRegitMuTobTecStepSeedLayers = RecoTracker.IterativeTracking.TobTecStep_cff.tobTecStepSeedLayersPair.clone() +hiRegitMuTobTecStepSeedLayers = RecoTracker.IterativeTracking.TobTecStep_cff.tobTecStepSeedLayersPair.clone() hiRegitMuTobTecStepSeedLayers.layerList.append('TOB1+TOB2') hiRegitMuTobTecStepSeedLayers.TOB.skipClusters = cms.InputTag('hiRegitMuTobTecStepClusters') hiRegitMuTobTecStepSeedLayers.TEC.skipClusters = cms.InputTag('hiRegitMuTobTecStepClusters') # seeding -hiRegitMuTobTecStepSeeds = RecoTracker.IterativeTracking.TobTecStep_cff.tobTecStepSeedsPair.clone() +hiRegitMuTobTecStepSeeds = RecoTracker.IterativeTracking.TobTecStep_cff.tobTecStepSeedsPair.clone() hiRegitMuTobTecStepSeeds.RegionFactoryPSet = HiTrackingRegionFactoryFromSTAMuonsBlock.clone() hiRegitMuTobTecStepSeeds.ClusterCheckPSet.doClusterCheck = False # do not check for max number of clusters pixel or strips hiRegitMuTobTecStepSeeds.RegionFactoryPSet.MuonTrackingRegionBuilder.EscapePt = 2.0 @@ -45,17 +45,17 @@ hiRegitMuTobTecStepInOutTrajectoryFilter = RecoTracker.IterativeTracking.TobTecStep_cff.tobTecStepInOutTrajectoryFilter.clone() hiRegitMuTobTecStepInOutTrajectoryFilter.minPt = 1.7 hiRegitMuTobTecStepInOutTrajectoryFilter.minimumNumberOfHits = 6 -hiRegitMuTobTecStepInOutTrajectoryFilter.minHitsMinPt = 4 +hiRegitMuTobTecStepInOutTrajectoryFilter.minHitsMinPt = 4 hiRegitMuTobTecStepTrajectoryFilter = RecoTracker.IterativeTracking.TobTecStep_cff.tobTecStepTrajectoryFilter.clone() -hiRegitMuTobTecStepTrajectoryFilter.minPt = 1.7 +hiRegitMuTobTecStepTrajectoryFilter.minPt = 1.7 hiRegitMuTobTecStepTrajectoryFilter.minimumNumberOfHits = 6 -hiRegitMuTobTecStepTrajectoryFilter.minHitsMinPt = 4 +hiRegitMuTobTecStepTrajectoryFilter.minHitsMinPt = 4 hiRegitMuTobTecStepTrajectoryBuilder = RecoTracker.IterativeTracking.TobTecStep_cff.tobTecStepTrajectoryBuilder.clone( - trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuTobTecStepTrajectoryFilter')), - inOutTrajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuTobTecStepInOutTrajectoryFilter')), + trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuTobTecStepTrajectoryFilter')), + inOutTrajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiRegitMuTobTecStepInOutTrajectoryFilter')), clustersToSkip = cms.InputTag('hiRegitMuTobTecStepClusters'), ) diff --git a/RecoHI/HiTracking/interface/HIBestVertexProducer.h b/RecoHI/HiTracking/interface/HIBestVertexProducer.h index 4da6b36d952b0..7a326a0ae561f 100644 --- a/RecoHI/HiTracking/interface/HIBestVertexProducer.h +++ b/RecoHI/HiTracking/interface/HIBestVertexProducer.h @@ -3,6 +3,9 @@ #include "FWCore/Framework/interface/EDProducer.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "DataFormats/BeamSpot/interface/BeamSpot.h" +#include "DataFormats/VertexReco/interface/Vertex.h" +#include "DataFormats/VertexReco/interface/VertexFwd.h" namespace edm { class Event; class EventSetup; } @@ -16,8 +19,8 @@ class HIBestVertexProducer : public edm::EDProducer private: void beginJob(); edm::ParameterSet theConfig; - edm::InputTag theBeamSpotTag; - edm::InputTag theMedianVertexCollection; - edm::InputTag theAdaptiveVertexCollection; + edm::EDGetTokenT theBeamSpotTag; + edm::EDGetTokenT theMedianVertexCollection; + edm::EDGetTokenT theAdaptiveVertexCollection; }; #endif diff --git a/RecoHI/HiTracking/interface/HICaloCompatibleTrackSelector.h b/RecoHI/HiTracking/interface/HICaloCompatibleTrackSelector.h index 60313e3dac783..380f0a814906a 100644 --- a/RecoHI/HiTracking/interface/HICaloCompatibleTrackSelector.h +++ b/RecoHI/HiTracking/interface/HICaloCompatibleTrackSelector.h @@ -17,7 +17,6 @@ #include "FWCore/Framework/interface/EDProducer.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/InputTag.h" #include "DataFormats/TrackReco/interface/TrackFwd.h" #include "DataFormats/TrackReco/interface/Track.h" @@ -25,12 +24,22 @@ #include "DataFormats/VertexReco/interface/VertexFwd.h" #include "DataFormats/VertexReco/interface/Vertex.h" #include "DataFormats/BeamSpot/interface/BeamSpot.h" -#include "TrackingTools/PatternTools/interface/Trajectory.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" +#include "SimDataFormats/TrackingAnalysis/interface/TrackingParticle.h" +#include "SimDataFormats/TrackingAnalysis/interface/TrackingParticleFwd.h" +#include "DataFormats/ParticleFlowReco/interface/PFBlock.h" +#include "DataFormats/ParticleFlowReco/interface/PFCluster.h" +#include "DataFormats/ParticleFlowReco/interface/PFClusterFwd.h" #include "DataFormats/ParticleFlowCandidate/interface/PFCandidate.h" + +#include "DataFormats/CaloTowers/interface/CaloTower.h" +#include "DataFormats/CaloTowers/interface/CaloTowerFwd.h" #include "DataFormats/CaloTowers/interface/CaloTowerCollection.h" +#include "TrackingTools/PatternTools/interface/Trajectory.h" +#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" + + // ROOT includes #include "TF1.h" @@ -60,10 +69,12 @@ namespace reco { namespace modules { bool selectByTowers(TI ti, const edm::Handle hSrcTrack, const edm::Handle towers, bool isTowerThere); /// source collection label - edm::InputTag srcTracks_; - edm::InputTag srcPFCands_; - edm::InputTag srcTower_; - + edm::EDGetTokenT srcTracks_; + edm::EDGetTokenT srcPFCands_; + edm::EDGetTokenT srcTower_; + edm::EDGetTokenT > srcTrackTrajs_; + edm::EDGetTokenT srcTrackTrajAssoc_; + // bool applyPtDepCut_; bool usePFCandMatching_; diff --git a/RecoHI/HiTracking/plugins/HIBestVertexProducer.cc b/RecoHI/HiTracking/plugins/HIBestVertexProducer.cc index 9367e13944b32..0a48effdc0797 100644 --- a/RecoHI/HiTracking/plugins/HIBestVertexProducer.cc +++ b/RecoHI/HiTracking/plugins/HIBestVertexProducer.cc @@ -5,9 +5,6 @@ #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/Event.h" -#include "DataFormats/VertexReco/interface/Vertex.h" -#include "DataFormats/VertexReco/interface/VertexFwd.h" -#include "DataFormats/BeamSpot/interface/BeamSpot.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include @@ -18,9 +15,9 @@ using namespace edm; /*****************************************************************************/ HIBestVertexProducer::HIBestVertexProducer (const edm::ParameterSet& ps) : theConfig(ps), - theBeamSpotTag(ps.getParameter("beamSpotLabel")), - theMedianVertexCollection(ps.getParameter("medianVertexCollection")), - theAdaptiveVertexCollection(ps.getParameter("adaptiveVertexCollection")) + theBeamSpotTag(consumes(ps.getParameter("beamSpotLabel"))), + theMedianVertexCollection(consumes(ps.getParameter("medianVertexCollection"))), + theAdaptiveVertexCollection(consumes(ps.getParameter("adaptiveVertexCollection"))) { produces(); } @@ -50,7 +47,7 @@ void HIBestVertexProducer::produce //** Get precise adaptive vertex **/ edm::Handle vc1; - ev.getByLabel(theAdaptiveVertexCollection, vc1); + ev.getByToken(theAdaptiveVertexCollection, vc1); const reco::VertexCollection *vertices1 = vc1.product(); if(vertices1->size()==0) @@ -70,18 +67,18 @@ void HIBestVertexProducer::produce //** Get fast median vertex **/ edm::Handle vc2; - ev.getByLabel(theMedianVertexCollection, vc2); + ev.getByToken(theMedianVertexCollection, vc2); const reco::VertexCollection * vertices2 = vc2.product(); //** Get beam spot position and error **/ reco::BeamSpot beamSpot; edm::Handle beamSpotHandle; - ev.getByLabel(theBeamSpotTag, beamSpotHandle); + ev.getByToken(theBeamSpotTag, beamSpotHandle); if( beamSpotHandle.isValid() ) beamSpot = *beamSpotHandle; else - LogError("HeavyIonVertexing") << "no beamspot with name: '" << theBeamSpotTag << "'" << endl; + LogError("HeavyIonVertexing") << "no beamspot found " << endl; if(vertices2->size() > 0) { diff --git a/RecoHI/HiTracking/plugins/HIPixelClusterVtxProducer.cc b/RecoHI/HiTracking/plugins/HIPixelClusterVtxProducer.cc index 3dc286de45531..aff27c89c8dca 100644 --- a/RecoHI/HiTracking/plugins/HIPixelClusterVtxProducer.cc +++ b/RecoHI/HiTracking/plugins/HIPixelClusterVtxProducer.cc @@ -14,8 +14,6 @@ #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" #include "Geometry/CommonDetUnit/interface/GeomDet.h" -#include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h" - #include "DataFormats/GeometryVector/interface/LocalPoint.h" #include "DataFormats/GeometryVector/interface/GlobalPoint.h" @@ -29,7 +27,7 @@ /*****************************************************************************/ HIPixelClusterVtxProducer::HIPixelClusterVtxProducer(const edm::ParameterSet& ps) - : srcPixels_(ps.getParameter("pixelRecHits")), + : srcPixelsString_(ps.getParameter("pixelRecHits")), minZ_(ps.getParameter("minZ")), maxZ_(ps.getParameter("maxZ")), zStep_(ps.getParameter("zStep")) @@ -37,6 +35,8 @@ HIPixelClusterVtxProducer::HIPixelClusterVtxProducer(const edm::ParameterSet& ps { // Constructor produces(); + srcPixels_ = (consumes(srcPixelsString_)); + } @@ -56,7 +56,7 @@ void HIPixelClusterVtxProducer::produce(edm::Event& ev, const edm::EventSetup& e // get pixel rechits edm::Handle hRecHits; - ev.getByLabel(edm::InputTag(srcPixels_),hRecHits); + ev.getByToken(srcPixels_,hRecHits); // get tracker geometry if (hRecHits.isValid()) { diff --git a/RecoHI/HiTracking/plugins/HIPixelClusterVtxProducer.h b/RecoHI/HiTracking/plugins/HIPixelClusterVtxProducer.h index f19bc8047072d..37a4e8d6a231d 100644 --- a/RecoHI/HiTracking/plugins/HIPixelClusterVtxProducer.h +++ b/RecoHI/HiTracking/plugins/HIPixelClusterVtxProducer.h @@ -4,6 +4,8 @@ #include "FWCore/Framework/interface/EDProducer.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h" + namespace edm { class Run; class Event; class EventSetup; } class TrackerGeometry; @@ -25,7 +27,8 @@ class HIPixelClusterVtxProducer : public edm::EDProducer virtual void produce(edm::Event& ev, const edm::EventSetup& es); int getContainedHits(const std::vector &hits, double z0, double &chi); - std::string srcPixels_; //pixel rec hits + std::string srcPixelsString_; //pixel rec hits + edm::EDGetTokenT srcPixels_; double minZ_; double maxZ_; diff --git a/RecoHI/HiTracking/plugins/HIPixelMedianVtxProducer.cc b/RecoHI/HiTracking/plugins/HIPixelMedianVtxProducer.cc index 4da085b30912b..c6b087c1961c5 100644 --- a/RecoHI/HiTracking/plugins/HIPixelMedianVtxProducer.cc +++ b/RecoHI/HiTracking/plugins/HIPixelMedianVtxProducer.cc @@ -19,7 +19,7 @@ /*****************************************************************************/ HIPixelMedianVtxProducer::HIPixelMedianVtxProducer(const edm::ParameterSet& ps) : - theTrackCollection(ps.getParameter("TrackCollection")), + theTrackCollection(consumes(ps.getParameter("TrackCollection"))), thePtMin(ps.getParameter("PtMin")), thePeakFindThresh(ps.getParameter("PeakFindThreshold")), thePeakFindMaxZ(ps.getParameter("PeakFindMaxZ")), @@ -37,7 +37,7 @@ void HIPixelMedianVtxProducer::produce { // Get pixel tracks edm::Handle trackCollection; - ev.getByLabel(theTrackCollection, trackCollection); + ev.getByToken(theTrackCollection, trackCollection); const reco::TrackCollection tracks_ = *(trackCollection.product()); // Select tracks above minimum pt diff --git a/RecoHI/HiTracking/plugins/HIPixelMedianVtxProducer.h b/RecoHI/HiTracking/plugins/HIPixelMedianVtxProducer.h index 849b6d3d8db9b..c58d701769498 100644 --- a/RecoHI/HiTracking/plugins/HIPixelMedianVtxProducer.h +++ b/RecoHI/HiTracking/plugins/HIPixelMedianVtxProducer.h @@ -7,8 +7,6 @@ #include "DataFormats/TrackReco/interface/Track.h" #include "DataFormats/TrackReco/interface/TrackFwd.h" -#include "FWCore/Utilities/interface/InputTag.h" - namespace edm { class Event; class EventSetup; } class HIPixelMedianVtxProducer : public edm::EDProducer @@ -21,7 +19,7 @@ class HIPixelMedianVtxProducer : public edm::EDProducer private: void beginJob(){}; - edm::InputTag theTrackCollection; + edm::EDGetTokenT theTrackCollection; double thePtMin; unsigned int thePeakFindThresh; double thePeakFindMaxZ; diff --git a/RecoHI/HiTracking/python/HILowPtConformalPixelTracks_cfi.py b/RecoHI/HiTracking/python/HILowPtConformalPixelTracks_cfi.py new file mode 100644 index 0000000000000..fb126a39233d9 --- /dev/null +++ b/RecoHI/HiTracking/python/HILowPtConformalPixelTracks_cfi.py @@ -0,0 +1,51 @@ +import FWCore.ParameterSet.Config as cms + +from RecoPixelVertexing.PixelTriplets.PixelTripletHLTGenerator_cfi import * +from RecoPixelVertexing.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import * +from RecoHI.HiTracking.HIPixelTrackFilter_cfi import * +from RecoHI.HiTracking.HITrackingRegionProducer_cfi import * + +from RecoPixelVertexing.PixelTrackFitting.PixelFitterByConformalMappingAndLine_cfi import * + +hiConformalPixelTracks = cms.EDProducer("PixelTrackProducer", + + #passLabel = cms.string('Pixel triplet low-pt tracks with vertex constraint'), + + # Region + RegionFactoryPSet = cms.PSet( + ComponentName = cms.string("GlobalTrackingRegionWithVerticesProducer"), + RegionPSet = cms.PSet( + HiLowPtTrackingRegionWithVertexBlock + ) + ), + + # Ordered Hits + OrderedHitsFactoryPSet = cms.PSet( + ComponentName = cms.string( "StandardHitTripletGenerator" ), + SeedingLayers = cms.string( "PixelLayerTriplets" ), + GeneratorPSet = cms.PSet( + PixelTripletHLTGenerator + ) + ), + + # Fitter + FitterPSet = cms.PSet( PixelFitterByConformalMappingAndLine + ), + + # Filter + useFilterWithES = cms.bool( True ), + FilterPSet = cms.PSet( + HiConformalPixelFilterBlock + ), + + # Cleaner + CleanerPSet = cms.PSet( + ComponentName = cms.string( "TrackCleaner" ) + ) + ) + +# increase threshold for triplets in generation step (default: 10000) +hiConformalPixelTracks.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = 5000000 + +hiConformalPixelTracks.FitterPSet.fixImpactParameter = cms.double(0.0) +hiConformalPixelTracks.FitterPSet.TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelTriplets') diff --git a/RecoHI/HiTracking/python/HIPixelTrackFilter_cfi.py b/RecoHI/HiTracking/python/HIPixelTrackFilter_cfi.py index 31f80ac662ea8..cd562a7641170 100644 --- a/RecoHI/HiTracking/python/HIPixelTrackFilter_cfi.py +++ b/RecoHI/HiTracking/python/HIPixelTrackFilter_cfi.py @@ -37,3 +37,15 @@ beamSpot = cms.InputTag( "offlineBeamSpot" ), siPixelRecHits = cms.InputTag( "siPixelRecHits" ) ) + +HiConformalPixelFilterBlock = cms.PSet( + ComponentName = cms.string( "HIPixelTrackFilter" ), + ptMin = cms.double( 0.2 ), + chi2 = cms.double( 80.0 ), + useClusterShape = cms.bool( False ), + VertexCollection = cms.InputTag("hiSelectedVertex"), + nSigmaTipMaxTolerance = cms.double( 999.0 ), + tipMax = cms.double( 999.0 ), + nSigmaLipMaxTolerance = cms.double( 14.0 ), + lipMax = cms.double( 999.0 ) + ) diff --git a/RecoHI/HiTracking/python/HISelectedTracks_cfi.py b/RecoHI/HiTracking/python/HISelectedTracks_cfi.py index e6ddfdee46d5c..f42849b32eff1 100644 --- a/RecoHI/HiTracking/python/HISelectedTracks_cfi.py +++ b/RecoHI/HiTracking/python/HISelectedTracks_cfi.py @@ -36,4 +36,5 @@ #complete sequence hiTracksWithQuality = cms.Sequence(hiInitialStepSelector - * hiSelectedTracks) + #* hiSelectedTracks +) diff --git a/RecoHI/HiTracking/python/HITrackingRegionProducer_cfi.py b/RecoHI/HiTracking/python/HITrackingRegionProducer_cfi.py index 7600db6ef47fc..687652f0fb2b9 100644 --- a/RecoHI/HiTracking/python/HITrackingRegionProducer_cfi.py +++ b/RecoHI/HiTracking/python/HITrackingRegionProducer_cfi.py @@ -14,6 +14,21 @@ sigmaZVertex = cms.double(3.0) ) + +# global tracking region for low-pt pixel tracks +HiLowPtTrackingRegionWithVertexBlock = cms.PSet( + ptMin = cms.double(0.2), + originRadius = cms.double(0.2), + nSigmaZ = cms.double(3.0), + beamSpot = cms.InputTag("offlineBeamSpot"), + precise = cms.bool(True), + useFoundVertices = cms.bool(True), + VertexCollection = cms.InputTag("hiSelectedVertex"), + useFixedError = cms.bool(True), + fixedError = cms.double(0.2), + sigmaZVertex = cms.double(3.0) + ) + # limited tracking region for pixel proto-tracks passed to vertexing HiTrackingRegionForPrimaryVertexBlock = cms.PSet( ptMin = cms.double( 0.7 ), diff --git a/RecoHI/HiTracking/python/HiTracking_cff.py b/RecoHI/HiTracking/python/HiTracking_cff.py new file mode 100644 index 0000000000000..b47aeab2ca589 --- /dev/null +++ b/RecoHI/HiTracking/python/HiTracking_cff.py @@ -0,0 +1,23 @@ + +from RecoHI.HiTracking.HILowPtConformalPixelTracks_cfi import * +from RecoHI.HiTracking.LowPtTracking_PbPb_cff import * +from RecoHI.HiTracking.hiSecondPixelTripletStep_cff import * +from RecoHI.HiTracking.hiMixedTripletStep_cff import * +from RecoHI.HiTracking.hiPixelPairStep_cff import * +from RecoHI.HiTracking.MergeTrackCollectionsHI_cff import * + +hiTracking = cms.Sequence( + hiBasicTracking + *hiSecondPixelTripletStep + *hiPixelPairStep + *hiGeneralTracks + ) + +hiTracking_wConformalPixel = cms.Sequence( + hiBasicTracking + *hiSecondPixelTripletStep + *hiPixelPairStep + *hiGeneralTracks + *hiConformalPixelTracks + ) + diff --git a/RecoHI/HiTracking/python/HighPtTracking_PbPb_cff.py b/RecoHI/HiTracking/python/HighPtTracking_PbPb_cff.py index 65f832630a992..c2cc772408dfe 100644 --- a/RecoHI/HiTracking/python/HighPtTracking_PbPb_cff.py +++ b/RecoHI/HiTracking/python/HighPtTracking_PbPb_cff.py @@ -27,7 +27,7 @@ from RecoHI.HiTracking.HISelectedTracks_cfi import * ### paths -heavyIonTracking = cms.Sequence(hiPixelVertices +hiBasicTracking = cms.Sequence(hiPixelVertices * hiPrimSeeds * hiPrimTrackCandidates * hiGlobalPrimTracks diff --git a/RecoHI/HiTracking/python/RecoHiTracker_EventContent_cff.py b/RecoHI/HiTracking/python/RecoHiTracker_EventContent_cff.py index 5e812593bf047..384e0872d28a5 100644 --- a/RecoHI/HiTracking/python/RecoHiTracker_EventContent_cff.py +++ b/RecoHI/HiTracking/python/RecoHiTracker_EventContent_cff.py @@ -3,7 +3,8 @@ #Full Event content RecoHiTrackerFEVT = cms.PSet( outputCommands = cms.untracked.vstring( - 'keep *_hiSelectedTracks_*_*', + 'keep *_hiGeneralTracks_*_*', + 'keep *_hiConformalPixelTracks_*_*', 'keep *_hiPixel3PrimTracks_*_*', 'keep *_hiPixel3ProtoTracks_*_*', 'keep *_hiSelectedProtoTracks_*_*', @@ -25,8 +26,8 @@ #RECO content RecoHiTrackerRECO = cms.PSet( outputCommands = cms.untracked.vstring( - 'keep *_hiSelectedTracks_*_*', - #'keep *_hiPixel3PrimTracks_*_*', + 'keep *_hiGeneralTracks_*_*', + 'keep *_hiConformalPixelTracks_*_*', 'keep recoVertexs_hiPixelMedianVertex_*_*', 'keep recoVertexs_hiPixelAdaptiveVertex_*_*', 'keep recoVertexs_hiSelectedVertex_*_*', @@ -44,7 +45,8 @@ #AOD content RecoHiTrackerAOD = cms.PSet( - outputCommands = cms.untracked.vstring('keep recoTracks_hiSelectedTracks_*_*', - 'keep recoVertexs_hiSelectedVertex_*_*' + outputCommands = cms.untracked.vstring('keep recoTracks_hiGeneralTracks_*_*', + 'keep recoTracks_hiConformalPixelTracks_*_*', + 'keep recoVertexs_hiSelectedVertex_*_*' ) ) diff --git a/RecoHI/HiTracking/python/hiIterTracking_cff.py b/RecoHI/HiTracking/python/hiIterTracking_cff.py deleted file mode 100644 index 014f1fc7b5e49..0000000000000 --- a/RecoHI/HiTracking/python/hiIterTracking_cff.py +++ /dev/null @@ -1,10 +0,0 @@ -from RecoHI.HiTracking.hiSecondPixelTripletStep_cff import * -from RecoHI.HiTracking.hiMixedTripletStep_cff import * -from RecoHI.HiTracking.hiPixelPairStep_cff import * -from RecoHI.HiTracking.MergeTrackCollectionsHI_cff import * - -hiIterTracking = cms.Sequence( - hiSecondPixelTripletStep - *hiPixelPairStep - *hiGeneralTracks - ) diff --git a/RecoHI/HiTracking/python/hiPixelPairStep_cff.py b/RecoHI/HiTracking/python/hiPixelPairStep_cff.py index e5451c28d8994..628af6e5f19b7 100644 --- a/RecoHI/HiTracking/python/hiPixelPairStep_cff.py +++ b/RecoHI/HiTracking/python/hiPixelPairStep_cff.py @@ -9,6 +9,7 @@ trajectories = cms.InputTag("hiSecondPixelTripletGlobalPrimTracks"), overrideTrkQuals = cms.InputTag('hiSecondPixelTripletStepSelector','hiSecondPixelTripletStep'), TrackQuality = cms.string('highPurity'), + minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0), pixelClusters = cms.InputTag("siPixelClusters"), stripClusters = cms.InputTag("siStripClusters"), Common = cms.PSet( @@ -29,6 +30,16 @@ 'BPix1+FPix1_pos', 'BPix1+FPix1_neg', 'BPix2+FPix1_pos', 'BPix2+FPix1_neg', 'FPix1_pos+FPix2_pos', 'FPix1_neg+FPix2_neg'), + BPix = cms.PSet( + TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'), + HitProducer = cms.string('siPixelRecHits'), + skipClusters = cms.InputTag('hiPixelPairClusters') + ), + FPix = cms.PSet( + TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'), + HitProducer = cms.string('siPixelRecHits'), + skipClusters = cms.InputTag('hiPixelPairClusters') + ) ) # SEEDS @@ -45,6 +56,8 @@ hiPixelPairSeeds.OrderedHitsFactoryPSet.maxElement = 5000000 hiPixelPairSeeds.ClusterCheckPSet.MaxNumberOfPixelClusters = 5000000 hiPixelPairSeeds.ClusterCheckPSet.MaxNumberOfCosmicClusters = 50000000 +hiPixelPairSeeds.ClusterCheckPSet.MaxNumberOfCosmicClusters = 50000000 +del hiPixelPairSeeds.ClusterCheckPSet.cut hiPixelPairSeeds.SeedComparitorPSet = cms.PSet( ComponentName = cms.string('PixelClusterShapeSeedComparitor'), @@ -65,34 +78,43 @@ import TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi hiPixelPairChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone( - ComponentName = cms.string('hiPixelPairChi2Est'), - nSigma = cms.double(3.0), - MaxChi2 = cms.double(9.0) - ) + ComponentName = cms.string('hiPixelPairChi2Est'), + nSigma = cms.double(3.0), + MaxChi2 = cms.double(9.0), + minGoodStripCharge = cms.double(2069), + pTChargeCutThreshold = cms.double(15.) + ) # TRACK BUILDING import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi hiPixelPairTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone( MeasurementTrackerName = '', trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiPixelPairTrajectoryFilter')), - clustersToSkip = cms.InputTag('hiPixelPairClusters'), maxCand = 3, - #estimator = cms.string('hiPixelPairChi2Est') + estimator = cms.string('hiPixelPairChi2Est'), + maxDPhiForLooperReconstruction = cms.double(2.0), + maxPtForLooperReconstruction = cms.double(0.7) ) # MAKING OF TRACK CANDIDATES import RecoTracker.CkfPattern.CkfTrackCandidates_cfi hiPixelPairTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone( src = cms.InputTag('hiPixelPairSeeds'), - TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiPixelPairTrajectoryBuilder')) + clustersToSkip = cms.InputTag('hiPixelPairClusters'), + TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiPixelPairTrajectoryBuilder')), + ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput + numHitsForSeedCleaner = cms.int32(50), + onlyPixelHitsForSeedCleaner = cms.bool(True), + ) # TRACK FITTING import RecoTracker.TrackProducer.TrackProducer_cfi hiPixelPairGlobalPrimTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone( + AlgorithmName = cms.string('iter2'), src = 'hiPixelPairTrackCandidates', - AlgorithmName = cms.string('iter2') + Fitter = cms.string('FlexibleKFFittingSmoother') ) diff --git a/RecoHI/HiTracking/python/hiRegitPixelPairStep_cff.py b/RecoHI/HiTracking/python/hiRegitPixelPairStep_cff.py index e12baa3d0ece1..ffc14253bf524 100644 --- a/RecoHI/HiTracking/python/hiRegitPixelPairStep_cff.py +++ b/RecoHI/HiTracking/python/hiRegitPixelPairStep_cff.py @@ -62,7 +62,6 @@ # fitting: feed new-names hiRegitPixelPairStepTracks = RecoTracker.IterativeTracking.PixelPairStep_cff.pixelPairStepTracks.clone( src = 'hiRegitPixelPairStepTrackCandidates', - #AlgorithmName = cms.string('iter6'), AlgorithmName = cms.string('iter2'), ) diff --git a/RecoHI/HiTracking/python/hiRegitTracking_cff.py b/RecoHI/HiTracking/python/hiRegitTracking_cff.py index 8e476e8ebba54..e16f1dd703a70 100644 --- a/RecoHI/HiTracking/python/hiRegitTracking_cff.py +++ b/RecoHI/HiTracking/python/hiRegitTracking_cff.py @@ -21,30 +21,30 @@ hiRegitInitialStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 0.02 hiRegitLowPtTripletStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 0.02 -hiRegitPixelPairStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 0.02 +hiRegitPixelPairStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 0.015 hiRegitDetachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 1.5 -hiRegitMixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originRadius = 1.0 +hiRegitMixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originRadius = 0.5 hiRegitMixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.originRadius = 0.5 hiRegitInitialStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 0.02 hiRegitLowPtTripletStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 0.02 -hiRegitPixelPairStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 0.02 +hiRegitPixelPairStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 0.015 hiRegitDetachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 1.5 -hiRegitMixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originHalfLength = 1.0 +hiRegitMixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.originHalfLength = 0.5 hiRegitMixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.originHalfLength = 0.5 -hiRegitInitialStepSeeds.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.3 -hiRegitInitialStepSeeds.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.3 -hiRegitLowPtTripletStepSeeds.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.3 -hiRegitLowPtTripletStepSeeds.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.3 -hiRegitPixelPairStepSeeds.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.3 -hiRegitPixelPairStepSeeds.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.3 -hiRegitDetachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.3 -hiRegitDetachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.3 -hiRegitMixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.3 -hiRegitMixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.3 -hiRegitMixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.3 -hiRegitMixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.3 +hiRegitInitialStepSeeds.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.4 +hiRegitInitialStepSeeds.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.4 +hiRegitLowPtTripletStepSeeds.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.4 +hiRegitLowPtTripletStepSeeds.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.4 +hiRegitPixelPairStepSeeds.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.4 +hiRegitPixelPairStepSeeds.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.4 +hiRegitDetachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.4 +hiRegitDetachedTripletStepSeeds.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.4 +hiRegitMixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.4 +hiRegitMixedTripletStepSeedsA.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.4 +hiRegitMixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.deltaPhiRegion = 0.4 +hiRegitMixedTripletStepSeedsB.RegionFactoryPSet.RegionPSet.deltaEtaRegion = 0.4 diff --git a/RecoHI/HiTracking/python/hiSecondPixelTripletStep_cff.py b/RecoHI/HiTracking/python/hiSecondPixelTripletStep_cff.py index 08a31046a82d7..5fcba22309fb2 100644 --- a/RecoHI/HiTracking/python/hiSecondPixelTripletStep_cff.py +++ b/RecoHI/HiTracking/python/hiSecondPixelTripletStep_cff.py @@ -1,27 +1,24 @@ import FWCore.ParameterSet.Config as cms -# Filter on quality tracks -hiFirstStepFilter = cms.EDProducer("QualityFilter", - TrackQuality = cms.string('highPurity'), - recTracks = cms.InputTag("hiSelectedTracks") - ) # NEW CLUSTERS (remove previously used clusters) hiSecondPixelTripletClusters = cms.EDProducer("TrackClusterRemover", - clusterLessSolution= cms.bool(True), - trajectories = cms.InputTag("hiFirstStepFilter"), - TrackQuality = cms.string('highPurity'), - pixelClusters = cms.InputTag("siPixelClusters"), - stripClusters = cms.InputTag("siStripClusters"), - Common = cms.PSet( - maxChi2 = cms.double(9.0) - ), - Strip = cms.PSet( - #Yen-Jie's mod to preserve merged clusters - maxSize = cms.uint32(2), - maxChi2 = cms.double(9.0) - ) - ) + clusterLessSolution= cms.bool(True), + trajectories = cms.InputTag("hiGlobalPrimTracks"), + overrideTrkQuals = cms.InputTag("hiInitialStepSelector","hiInitialStep"), + TrackQuality = cms.string('highPurity'), + minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0), + pixelClusters = cms.InputTag("siPixelClusters"), + stripClusters = cms.InputTag("siStripClusters"), + Common = cms.PSet( + maxChi2 = cms.double(9.0) + ), + Strip = cms.PSet( + #Yen-Jie's mod to preserve merged clusters + maxSize = cms.uint32(2), + maxChi2 = cms.double(9.0) + ) + ) # SEEDING LAYERS @@ -35,12 +32,19 @@ from RecoTracker.TkTrackingRegions.GlobalTrackingRegionFromBeamSpot_cfi import RegionPsetFomBeamSpotBlock hiSecondPixelTripletSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone( RegionFactoryPSet = RegionPsetFomBeamSpotBlock.clone( - ComponentName = cms.string('GlobalRegionProducerFromBeamSpot'), - RegionPSet = RegionPsetFomBeamSpotBlock.RegionPSet.clone( - ptMin = 4.0, - originRadius = 0.005, - nSigmaZ = 4.0 - ) + ComponentName = cms.string('GlobalTrackingRegionWithVerticesProducer'), + RegionPSet = cms.PSet( + precise = cms.bool(True), + beamSpot = cms.InputTag("offlineBeamSpot"), + useFixedError = cms.bool(False), #def value True + nSigmaZ = cms.double(4.0), + sigmaZVertex = cms.double(4.0), #def value 3 + fixedError = cms.double(0.2), + VertexCollection = cms.InputTag("hiSelectedVertex"), + ptMin = cms.double(0.4), + useFoundVertices = cms.bool(True), + originRadius = cms.double(0.02) + ) ) ) @@ -48,18 +52,18 @@ hiSecondPixelTripletSeeds.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = 5000000 hiSecondPixelTripletSeeds.ClusterCheckPSet.MaxNumberOfPixelClusters = 5000000 hiSecondPixelTripletSeeds.ClusterCheckPSet.MaxNumberOfCosmicClusters = 50000000 +del hiSecondPixelTripletSeeds.ClusterCheckPSet.cut from RecoPixelVertexing.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import * import RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi hiSecondPixelTripletSeeds.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor - # QUALITY CUTS DURING TRACK BUILDING import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff hiSecondPixelTripletTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone( maxLostHits = 1, minimumNumberOfHits = 6, - minPt = 1.0 + minPt = 0.4 ) import TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi @@ -69,23 +73,28 @@ MaxChi2 = cms.double(9.0) ) - # TRACK BUILDING import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi hiSecondPixelTripletTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone( MeasurementTrackerName = '', trajectoryFilter = cms.PSet(refToPSet_ = cms.string('hiSecondPixelTripletTrajectoryFilter')), - clustersToSkip = cms.InputTag('hiSecondPixelTripletClusters'), maxCand = 3, - #estimator = cms.string('hiSecondPixelTripletChi2Est') + estimator = cms.string('hiSecondPixelTripletChi2Est'), + maxDPhiForLooperReconstruction = cms.double(2.0), + # 0.63 GeV is the maximum pT for a charged particle to loop within the 1.1m radius + # of the outermost Tracker barrel layer (with B=3.8T) + maxPtForLooperReconstruction = cms.double(0.7) ) - # MAKING OF TRACK CANDIDATES import RecoTracker.CkfPattern.CkfTrackCandidates_cfi hiSecondPixelTripletTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone( src = cms.InputTag('hiSecondPixelTripletSeeds'), + ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput + numHitsForSeedCleaner = cms.int32(50), + onlyPixelHitsForSeedCleaner = cms.bool(True), TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('hiSecondPixelTripletTrajectoryBuilder')), + clustersToSkip = cms.InputTag('hiSecondPixelTripletClusters'), doSeedingRegionRebuilding = True, useHitsSplitting = True ) @@ -94,7 +103,8 @@ import RecoTracker.TrackProducer.TrackProducer_cfi hiSecondPixelTripletGlobalPrimTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone( src = 'hiSecondPixelTripletTrackCandidates', - AlgorithmName = cms.string('iter1') + AlgorithmName = cms.string('iter1'), + Fitter=cms.string('FlexibleKFFittingSmoother') ) @@ -114,7 +124,7 @@ RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone( name = 'hiSecondPixelTripletStep', preFilterName = 'hiSecondPixelTripletStepTight', - min_nhits = 14 + # min_nhits = 14 ), ) #end of vpset ) #end of clone @@ -132,8 +142,7 @@ # Final sequence -hiSecondPixelTripletStep = cms.Sequence(hiFirstStepFilter* - hiSecondPixelTripletClusters* +hiSecondPixelTripletStep = cms.Sequence(hiSecondPixelTripletClusters* hiSecondPixelTripletSeedLayers* hiSecondPixelTripletSeeds* hiSecondPixelTripletTrackCandidates* diff --git a/RecoHI/HiTracking/src/HICaloCompatibleTrackSelector.cc b/RecoHI/HiTracking/src/HICaloCompatibleTrackSelector.cc index 4234cce03c0fb..f51d8762c8c47 100644 --- a/RecoHI/HiTracking/src/HICaloCompatibleTrackSelector.cc +++ b/RecoHI/HiTracking/src/HICaloCompatibleTrackSelector.cc @@ -18,21 +18,9 @@ // Basic inclusion #include "RecoHI/HiTracking/interface/HICaloCompatibleTrackSelector.h" -#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackReco/interface/TrackFwd.h" - -#include "DataFormats/ParticleFlowReco/interface/PFBlock.h" -#include "DataFormats/ParticleFlowReco/interface/PFCluster.h" -#include "DataFormats/ParticleFlowReco/interface/PFClusterFwd.h" - #include "DataFormats/RecoCandidate/interface/TrackAssociation.h" #include "SimTracker/Records/interface/TrackAssociatorRecord.h" #include "SimTracker/TrackAssociation/interface/TrackAssociatorByHits.h" -#include "SimDataFormats/TrackingAnalysis/interface/TrackingParticle.h" -#include "SimDataFormats/TrackingAnalysis/interface/TrackingParticleFwd.h" - -#include "DataFormats/CaloTowers/interface/CaloTower.h" -#include "DataFormats/CaloTowers/interface/CaloTowerFwd.h" #include "FWCore/Framework/interface/EventSetup.h" #include "FWCore/Framework/interface/ESHandle.h" @@ -45,9 +33,9 @@ using reco::modules::HICaloCompatibleTrackSelector; HICaloCompatibleTrackSelector::HICaloCompatibleTrackSelector( const edm::ParameterSet & cfg ) : - srcTracks_(cfg.getParameter("srcTracks")), - srcPFCands_(cfg.getParameter("srcPFCands")), - srcTower_(cfg.getParameter("srcTower")), + srcTracks_(consumes(cfg.getParameter("srcTracks"))), + srcPFCands_(consumes(cfg.getParameter("srcPFCands"))), + srcTower_(consumes(cfg.getParameter("srcTower"))), usePFCandMatching_(cfg.getUntrackedParameter("usePFCandMatching", true)), trkMatchPtMin_(cfg.getUntrackedParameter("trkMatchPtMin",10.0)), trkCompPtMin_(cfg.getUntrackedParameter("trkCompPtMin",35.0)), @@ -76,6 +64,8 @@ HICaloCompatibleTrackSelector::HICaloCompatibleTrackSelector( const edm::Paramet if (copyTrajectories_) { produces< std::vector >().setBranchAlias( alias + "Trajectories"); produces< TrajTrackAssociationCollection >().setBranchAlias( alias + "TrajectoryTrackAssociations"); + srcTrackTrajs_ = (consumes >(cfg.getParameter("srcTracks"))); + srcTrackTrajAssoc_ = (consumes(cfg.getParameter("srcTracks"))); } // pt dependence of delta R matching requirement @@ -104,7 +94,7 @@ void HICaloCompatibleTrackSelector::produce( edm::Event& evt, const edm::EventSe Handle< vector > hTrajP; Handle< TrajTrackAssociationCollection > hTTAss; - evt.getByLabel(srcTracks_,hSrcTrack); + evt.getByToken(srcTracks_,hSrcTrack); selTracks_ = auto_ptr(new TrackCollection()); rTracks_ = evt.getRefBeforePut(); @@ -125,8 +115,8 @@ void HICaloCompatibleTrackSelector::produce( edm::Event& evt, const edm::EventSe bool isPFThere = false; bool isTowerThere = false; - if(usePFCandMatching_) isPFThere = evt.getByLabel(srcPFCands_, pfCandidates); - else isTowerThere = evt.getByLabel(srcTower_, towers); + if(usePFCandMatching_) isPFThere = evt.getByToken(srcPFCands_, pfCandidates); + else isTowerThere = evt.getByToken(srcTower_, towers); size_t current = 0; for (TI ti = hSrcTrack->begin(), ed = hSrcTrack->end(); ti != ed; ++ti, ++current) { @@ -173,8 +163,8 @@ void HICaloCompatibleTrackSelector::produce( edm::Event& evt, const edm::EventSe if ( copyTrajectories_ ) { Handle< vector > hTraj; Handle< TrajTrackAssociationCollection > hTTAss; - evt.getByLabel(srcTracks_, hTTAss); - evt.getByLabel(srcTracks_, hTraj); + evt.getByToken(srcTrackTrajs_, hTTAss); + evt.getByToken(srcTrackTrajAssoc_, hTraj); selTrajs_ = auto_ptr< vector >(new vector()); rTrajectories_ = evt.getRefBeforePut< vector >(); selTTAss_ = auto_ptr< TrajTrackAssociationCollection >(new TrajTrackAssociationCollection()); diff --git a/RecoHI/HiTracking/test/HIPixelClusterVtxAnalyzer.cc b/RecoHI/HiTracking/test/HIPixelClusterVtxAnalyzer.cc index 9730ecd56bd8f..3eae42dd3219f 100644 --- a/RecoHI/HiTracking/test/HIPixelClusterVtxAnalyzer.cc +++ b/RecoHI/HiTracking/test/HIPixelClusterVtxAnalyzer.cc @@ -14,8 +14,6 @@ #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" #include "Geometry/CommonDetUnit/interface/GeomDet.h" -#include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h" - #include "DataFormats/GeometryVector/interface/LocalPoint.h" #include "DataFormats/GeometryVector/interface/GlobalPoint.h" @@ -28,7 +26,7 @@ /*****************************************************************************/ HIPixelClusterVtxAnalyzer::HIPixelClusterVtxAnalyzer(const edm::ParameterSet& ps) - : srcPixels_(ps.getParameter("pixelRecHits")), + : srcPixels_(consumes(ps.getParameter("pixelRecHits"))), minZ_(ps.getParameter("minZ")), maxZ_(ps.getParameter("maxZ")), zStep_(ps.getParameter("zStep")), @@ -65,7 +63,7 @@ void HIPixelClusterVtxAnalyzer::analyze(const edm::Event& ev, const edm::EventSe // get pixel rechits edm::Handle hRecHits; try { - ev.getByLabel(srcPixels_,hRecHits); + ev.getByToken(srcPixels_,hRecHits); } catch (...) {} // get tracker geometry diff --git a/RecoHI/HiTracking/test/HIPixelClusterVtxAnalyzer.h b/RecoHI/HiTracking/test/HIPixelClusterVtxAnalyzer.h index 251c341a07a0e..dc9bca99cd865 100644 --- a/RecoHI/HiTracking/test/HIPixelClusterVtxAnalyzer.h +++ b/RecoHI/HiTracking/test/HIPixelClusterVtxAnalyzer.h @@ -5,10 +5,10 @@ #include "FWCore/Framework/interface/EDAnalyzer.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/MakerMacros.h" -#include "FWCore/Utilities/interface/InputTag.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/ServiceRegistry/interface/Service.h" #include "CommonTools/UtilAlgos/interface/TFileService.h" +#include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h" // ROOT includes #include @@ -34,7 +34,7 @@ class HIPixelClusterVtxAnalyzer : public edm::EDAnalyzer virtual void analyze(const edm::Event& ev, const edm::EventSetup& es); int getContainedHits(const std::vector &hits, double z0, double &chi); - edm::InputTag srcPixels_; //pixel rec hits + edm::EDGetTokenT srcPixels_; //pixel rec hits double minZ_; double maxZ_; diff --git a/RecoHI/HiTracking/test/runIterCaloMatching_cfg.py b/RecoHI/HiTracking/test/runIterCaloMatching_cfg.py index f202ccae8a439..3a7978da946dd 100644 --- a/RecoHI/HiTracking/test/runIterCaloMatching_cfg.py +++ b/RecoHI/HiTracking/test/runIterCaloMatching_cfg.py @@ -109,9 +109,9 @@ process.hiTrackReco *process.muonRecoPbPb *process.electronGsfTrackingHi - *process.HiParticleFlowLocalReco + *process.hiParticleFlowLocalReco *process.gsfEcalDrivenElectronSequence - *process.HiParticleFlowReco + *process.hiParticleFlowReco *process.PFTowers ) else: @@ -141,7 +141,7 @@ srcTracks = 'hiGeneralTracks' ) -process.HiParticleFlowReco *= process.hiGeneralCaloMatchedTracks +process.hiParticleFlowReco *= process.hiGeneralCaloMatchedTracks process.hiCaloMatchFilteredTracks = cms.EDFilter("TrackSelector", src = cms.InputTag("hiGeneralCaloMatchedTracks"), @@ -149,7 +149,7 @@ 'quality("highPuritySetWithPV")') ) -process.HiParticleFlowReco*=process.hiCaloMatchFilteredTracks +process.hiParticleFlowReco*=process.hiCaloMatchFilteredTracks diff --git a/RecoJets/JetProducers/interface/PileUpSubtractor.h b/RecoJets/JetProducers/interface/PileUpSubtractor.h index bf36b91aaafc8..5efe5cbfedf33 100644 --- a/RecoJets/JetProducers/interface/PileUpSubtractor.h +++ b/RecoJets/JetProducers/interface/PileUpSubtractor.h @@ -11,6 +11,7 @@ #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/EventSetup.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Framework/interface/ConsumesCollector.h" #include "DataFormats/JetReco/interface/CaloJet.h" #include "DataFormats/HcalDetId/interface/HcalDetId.h" @@ -26,7 +27,7 @@ class PileUpSubtractor{ typedef boost::shared_ptr RangeDefPtr; typedef boost::shared_ptr JetDefPtr; - PileUpSubtractor(const edm::ParameterSet& iConfig); + PileUpSubtractor(const edm::ParameterSet& iConfig, edm::ConsumesCollector && iC); virtual ~PileUpSubtractor(){;} virtual void setDefinition(JetDefPtr const & jetDef); @@ -85,7 +86,7 @@ virtual double getPileUpEnergy(int ijet) const {return jetOffset_[ijet];} }; #include "FWCore/PluginManager/interface/PluginFactory.h" -namespace edm {class ParameterSet; class EventSetup; } -typedef edmplugin::PluginFactory PileUpSubtractorFactory; +namespace edm {class ParameterSet; class EventSetup; class ConsumesCollector;} +typedef edmplugin::PluginFactory PileUpSubtractorFactory; #endif diff --git a/RecoJets/JetProducers/plugins/VirtualJetProducer.cc b/RecoJets/JetProducers/plugins/VirtualJetProducer.cc index 7b242f1ca7ab7..437f59bd236c2 100644 --- a/RecoJets/JetProducers/plugins/VirtualJetProducer.cc +++ b/RecoJets/JetProducers/plugins/VirtualJetProducer.cc @@ -17,6 +17,7 @@ #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/Utilities/interface/isFinite.h" +#include "FWCore/Framework/interface/ConsumesCollector.h" #include "DataFormats/Common/interface/View.h" #include "DataFormats/Common/interface/Handle.h" @@ -182,18 +183,15 @@ VirtualJetProducer::VirtualJetProducer(const edm::ParameterSet& iConfig) } if ( doPUOffsetCorr_ ) { - if ( jetTypeE != JetType::CaloJet && jetTypeE != JetType::BasicJet) { - throw cms::Exception("InvalidInput") << "Can only offset correct jets of type CaloJet or BasicJet"; - } - + if(iConfig.exists("subtractorName")) puSubtractorName_ = iConfig.getParameter ("subtractorName"); else puSubtractorName_ = std::string(); if(puSubtractorName_.empty()){ edm::LogWarning("VirtualJetProducer") << "Pile Up correction on; however, pile up type is not specified. Using default... \n"; - subtractor_ = boost::shared_ptr(new PileUpSubtractor(iConfig)); + subtractor_ = boost::shared_ptr(new PileUpSubtractor(iConfig, consumesCollector())); }else{ - subtractor_ = boost::shared_ptr(PileUpSubtractorFactory::get()->create( puSubtractorName_, iConfig)); + subtractor_ = boost::shared_ptr(PileUpSubtractorFactory::get()->create( puSubtractorName_, iConfig, consumesCollector())); } } diff --git a/RecoJets/JetProducers/src/PileUpSubtractor.cc b/RecoJets/JetProducers/src/PileUpSubtractor.cc index 1fa9b8ca0a25c..bec1da4af5376 100644 --- a/RecoJets/JetProducers/src/PileUpSubtractor.cc +++ b/RecoJets/JetProducers/src/PileUpSubtractor.cc @@ -15,7 +15,7 @@ #include using namespace std; -PileUpSubtractor::PileUpSubtractor(const edm::ParameterSet& iConfig) : +PileUpSubtractor::PileUpSubtractor(const edm::ParameterSet& iConfig, edm::ConsumesCollector && iC) : reRunAlgo_ (iConfig.getUntrackedParameter("reRunAlgo",false)), doAreaFastjet_ (iConfig.getParameter ("doAreaFastjet")), doRhoFastjet_ (iConfig.getParameter ("doRhoFastjet")), diff --git a/RecoTracker/DeDx/interface/ASmirnovDeDxDiscriminator.h b/RecoTracker/DeDx/interface/ASmirnovDeDxDiscriminator.h new file mode 100644 index 0000000000000..0ad0e23eaa793 --- /dev/null +++ b/RecoTracker/DeDx/interface/ASmirnovDeDxDiscriminator.h @@ -0,0 +1,52 @@ +#ifndef RecoTrackerDeDx_ASmirnovDeDxDiscriminator_h +#define RecoTrackerDeDx_ASmirnovDeDxDiscriminator_h + +#include "RecoTracker/DeDx/interface/DeDxTools.h" +#include "DataFormats/TrackReco/interface/DeDxHit.h" + +class ASmirnovDeDxDiscriminator: public BaseDeDxEstimator +{ +public: + ASmirnovDeDxDiscriminator(const edm::ParameterSet& iConfig){ + meVperADCStrip = iConfig.getParameter("MeVperADCStrip"); //currently needed until the map on the database are redone + Reccord = iConfig.getParameter ("Reccord"); + ProbabilityMode = iConfig.getParameter ("ProbabilityMode"); + Prob_ChargePath = NULL; + } + + virtual void beginRun(edm::Run const& run, const edm::EventSetup& iSetup){ + DeDxTools::buildDiscrimMap(run, iSetup, Reccord, ProbabilityMode, Prob_ChargePath); + } + + virtual std::pair dedx(const reco::DeDxHitCollection& Hits){ + std::vector vect_probs; + for(size_t i = 0; i< Hits.size(); i ++){ + float path = Hits[i].pathLength() * 10.0; //x10 in order to be compatible with the map content + float charge = Hits[i].charge() / (10.0*meVperADCStrip); // 10/meVperADCStrip in order to be compatible with the map content in ADC/mm instead of MeV/cm + + int BinX = Prob_ChargePath->GetXaxis()->FindBin(Hits[i].momentum()); + int BinY = Prob_ChargePath->GetYaxis()->FindBin(path); + int BinZ = Prob_ChargePath->GetZaxis()->FindBin(charge); + float prob = Prob_ChargePath->GetBinContent(BinX,BinY,BinZ); + if(prob>=0)vect_probs.push_back(prob); + } + + size_t size = vect_probs.size(); + if(size<=0) return std::make_pair( -1 , -1); + std::sort(vect_probs.begin(), vect_probs.end(), std::less() ); + float TotalProb = 1.0/(12*size); + for(size_t i=1;i<=size;i++){ + TotalProb += vect_probs[i-1] * pow(vect_probs[i-1] - ((2.0*i-1.0)/(2.0*size)),2); + } + TotalProb *= (3.0/size); + return std::make_pair( TotalProb , -1); + } + +private: + float meVperADCStrip; + std::string Reccord; + std::string ProbabilityMode; + TH3F* Prob_ChargePath; +}; + +#endif diff --git a/RecoTracker/DeDx/interface/BTagLikeDeDxDiscriminator.h b/RecoTracker/DeDx/interface/BTagLikeDeDxDiscriminator.h new file mode 100644 index 0000000000000..6e1eb3bc46c21 --- /dev/null +++ b/RecoTracker/DeDx/interface/BTagLikeDeDxDiscriminator.h @@ -0,0 +1,64 @@ +#ifndef RecoTrackerDeDx_BTagLikeDeDxDiscriminator_h +#define RecoTrackerDeDx_BTagLikeDeDxDiscriminator_h + +#include "RecoTracker/DeDx/interface/DeDxTools.h" +#include "DataFormats/TrackReco/interface/DeDxHit.h" + +class BTagLikeDeDxDiscriminator: public BaseDeDxEstimator +{ +public: + BTagLikeDeDxDiscriminator(const edm::ParameterSet& iConfig){ + meVperADCStrip = iConfig.getParameter("MeVperADCStrip"); //currently needed until the map on the database are redone + Reccord = iConfig.getParameter ("Reccord"); + ProbabilityMode = iConfig.getParameter ("ProbabilityMode"); + Prob_ChargePath = NULL; + } + + virtual void beginRun(edm::Run const& run, const edm::EventSetup& iSetup){ + DeDxTools::buildDiscrimMap(run, iSetup, Reccord, ProbabilityMode, Prob_ChargePath); + } + + virtual std::pair dedx(const reco::DeDxHitCollection& Hits){ + std::vector vect_probs; + for(size_t i = 0; i< Hits.size(); i ++){ + float path = Hits[i].pathLength() * 10.0; //x10 in order to be compatible with the map content + float charge = Hits[i].charge() / (10.0*meVperADCStrip); // 10/meVperADCStrip in order to be compatible with the map content in ADC/mm instead of MeV/cm + + int BinX = Prob_ChargePath->GetXaxis()->FindBin(Hits[i].momentum()); + int BinY = Prob_ChargePath->GetYaxis()->FindBin(path); + int BinZ = Prob_ChargePath->GetZaxis()->FindBin(charge); + float prob = Prob_ChargePath->GetBinContent(BinX,BinY,BinZ); + if(prob>=0)vect_probs.push_back(prob); + } + + size_t size = vect_probs.size(); + if(size<=0) return std::make_pair( -1 , -1); + std::sort(vect_probs.begin(), vect_probs.end(), std::less() ); + float SumJet = 0.; + for(size_t i=0;i dedx(const reco::DeDxHitCollection& Hits) = 0; + virtual void beginRun(edm::Run const& run, const edm::EventSetup& iSetup) {} }; #endif diff --git a/RecoTracker/DeDx/interface/DeDxDiscriminatorTools.h b/RecoTracker/DeDx/interface/DeDxDiscriminatorTools.h deleted file mode 100644 index 32deea8c4f32a..0000000000000 --- a/RecoTracker/DeDx/interface/DeDxDiscriminatorTools.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef DeDxDiscriminatorTools_H -#define DeDxDiscriminatorTools_H - - -#include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h" - -#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" -#include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h" -#include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetUnit.h" - -#include "Geometry/CommonDetUnit/interface/GeomDetUnit.h" -#include "Geometry/CommonDetUnit/interface/GeomDetType.h" -#include "Geometry/CommonTopologies/interface/StripTopology.h" - -#include "DataFormats/GeometrySurface/interface/TrapezoidalPlaneBounds.h" -#include "DataFormats/GeometrySurface/interface/RectangularPlaneBounds.h" - - - -namespace DeDxDiscriminatorTools -{ - - // using namespace std; - - bool IsSpanningOver2APV (unsigned int FirstStrip, unsigned int ClusterSize); - bool IsSaturatingStrip (const std::vector& Ampls); - double charge (const std::vector& Ampls); - double path (double cosine, double thickness); - - bool IsFarFromBorder (TrajectoryStateOnSurface trajState, const GeomDetUnit* it); - -} -#endif diff --git a/RecoTracker/DeDx/interface/DeDxTools.h b/RecoTracker/DeDx/interface/DeDxTools.h index 0170777f6fac3..a0979f8d39cb1 100644 --- a/RecoTracker/DeDx/interface/DeDxTools.h +++ b/RecoTracker/DeDx/interface/DeDxTools.h @@ -1,34 +1,54 @@ #ifndef DeDxTools_H #define DeDxTools_H + #include -#include "DataFormats/TrackReco/interface/DeDxHit.h" -#include "DataFormats/TrackReco/interface/TrackDeDxHits.h" + +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/ParameterSet/interface/ParameterSet.h" +#include "FWCore/Framework/interface/ESHandle.h" + #include "DataFormats/GeometryCommonDetAlgo/interface/Measurement1D.h" +#include "DataFormats/GeometrySurface/interface/TrapezoidalPlaneBounds.h" +#include "DataFormats/GeometrySurface/interface/RectangularPlaneBounds.h" #include "DataFormats/DetId/interface/DetId.h" -#include "TrackingTools/PatternTools/interface/Trajectory.h" -#include "TrackingTools/PatternTools/interface/Trajectory.h" +#include "DataFormats/TrackReco/interface/DeDxHit.h" +#include "DataFormats/TrackReco/interface/TrackDeDxHits.h" #include "DataFormats/TrackingRecHit/interface/TrackingRecHit.h" #include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2D.h" #include "DataFormats/TrackerRecHit2D/interface/ProjectedSiStripRecHit2D.h" #include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit1D.h" #include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHit.h" -#include "DataFormats/TrackReco/interface/DeDxHit.h" + +#include "TrackingTools/PatternTools/interface/Trajectory.h" +#include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h" + +#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" +#include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h" +#include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetUnit.h" +#include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" +#include "Geometry/CommonDetUnit/interface/GeomDetUnit.h" +#include "Geometry/CommonDetUnit/interface/GeomDetType.h" +#include "Geometry/CommonTopologies/interface/StripTopology.h" +#include "CondFormats/PhysicsToolsObjects/interface/Histogram3D.h" +#include "CondFormats/DataRecord/interface/SiStripDeDxMip_3D_Rcd.h" +#include "CondFormats/DataRecord/interface/SiStripDeDxElectron_3D_Rcd.h" +#include "CondFormats/DataRecord/interface/SiStripDeDxProton_3D_Rcd.h" +#include "CondFormats/DataRecord/interface/SiStripDeDxPion_3D_Rcd.h" +#include "CondFormats/DataRecord/interface/SiStripDeDxKaon_3D_Rcd.h" + + +#include "TFile.h" +#include "TChain.h" +#include "TH3F.h" namespace DeDxTools { - - struct RawHits { - double charge; - double angleCosine; - DetId detId; - const TrajectoryMeasurement* trajectoryMeasurement; - int NSaturating; - }; - - inline const SiStripCluster* GetCluster(const TrackerSingleRecHit * hit) { return &hit->stripCluster();} - inline const SiStripCluster* GetCluster(const TrackerSingleRecHit & hit) {return &hit.stripCluster();} - void trajectoryRawHits(const edm::Ref >& trajectory, std::vector& hits, bool usePixel, bool useStrip); - double genericAverage (const reco::DeDxHitCollection &, float expo = 1.); - bool shapeSelection(const std::vector & ampls); + bool shapeSelection (const std::vector & ampls); + int getCharge (const SiStripCluster* cluster, int& nSatStrip, const GeomDetUnit& detUnit, const std::vector< std::vector< float > >& calibGains, const unsigned int& m_off ); + void makeCalibrationMap(const std::string& m_calibrationPath, const TrackerGeometry& tkGeom, std::vector< std::vector< float > >& calibGains, const unsigned int& m_off); + void buildDiscrimMap (edm::Run const& run, const edm::EventSetup& iSetup, std::string Reccord, std::string ProbabilityMode, TH3F*& Prob_ChargePath); + bool IsSpanningOver2APV(unsigned int FirstStrip, unsigned int ClusterSize); + bool IsFarFromBorder (const TrajectoryStateOnSurface& trajState, const GeomDetUnit* it); } #endif diff --git a/RecoTracker/DeDx/interface/GenericAverageDeDxEstimator.h b/RecoTracker/DeDx/interface/GenericAverageDeDxEstimator.h index 0d2ee078be55a..5f6d3dd060aa6 100644 --- a/RecoTracker/DeDx/interface/GenericAverageDeDxEstimator.h +++ b/RecoTracker/DeDx/interface/GenericAverageDeDxEstimator.h @@ -7,10 +7,18 @@ class GenericAverageDeDxEstimator: public BaseDeDxEstimator { public: - GenericAverageDeDxEstimator(float expo): m_expo(expo) {} + GenericAverageDeDxEstimator(const edm::ParameterSet& iConfig){ + m_expo = iConfig.getParameter("exponent"); + } - virtual std::pair dedx(const reco::DeDxHitCollection& Hits) - {return std::make_pair(DeDxTools::genericAverage(Hits, m_expo),-1); } + virtual std::pair dedx(const reco::DeDxHitCollection& Hits) { + float result=0; + size_t n = Hits.size(); + for(size_t i = 0; i< n; i ++){ + result+=pow(Hits[i].charge(),m_expo); + } + return std::make_pair( ((n>0)?pow(result/n,1./m_expo):0.0) ,-1); + } private: float m_expo; diff --git a/RecoTracker/DeDx/interface/MedianDeDxEstimator.h b/RecoTracker/DeDx/interface/MedianDeDxEstimator.h index 08f20e6bd67a7..6f089ef85cc08 100644 --- a/RecoTracker/DeDx/interface/MedianDeDxEstimator.h +++ b/RecoTracker/DeDx/interface/MedianDeDxEstimator.h @@ -7,7 +7,8 @@ class MedianDeDxEstimator: public BaseDeDxEstimator { public: - MedianDeDxEstimator(float expo) {} + MedianDeDxEstimator(const edm::ParameterSet& iConfig){ + } virtual std::pair dedx(const reco::DeDxHitCollection & Hits){ if(Hits.size()==0)return std::make_pair(-1,-1); diff --git a/RecoTracker/DeDx/interface/ProductDeDxDiscriminator.h b/RecoTracker/DeDx/interface/ProductDeDxDiscriminator.h new file mode 100644 index 0000000000000..cd725d5470fea --- /dev/null +++ b/RecoTracker/DeDx/interface/ProductDeDxDiscriminator.h @@ -0,0 +1,51 @@ +#ifndef RecoTrackerDeDx_ProductDeDxDiscriminator_h +#define RecoTrackerDeDx_ProductDeDxDiscriminator_h + +#include "RecoTracker/DeDx/interface/DeDxTools.h" +#include "DataFormats/TrackReco/interface/DeDxHit.h" + +class ProductDeDxDiscriminator: public BaseDeDxEstimator +{ +public: + ProductDeDxDiscriminator(const edm::ParameterSet& iConfig){ + meVperADCStrip = iConfig.getParameter("MeVperADCStrip"); //currently needed until the map on the database are redone + Reccord = iConfig.getParameter ("Reccord"); + ProbabilityMode = iConfig.getParameter ("ProbabilityMode"); + Prob_ChargePath = NULL; + } + + virtual void beginRun(edm::Run const& run, const edm::EventSetup& iSetup){ + DeDxTools::buildDiscrimMap(run, iSetup, Reccord, ProbabilityMode, Prob_ChargePath); + } + + virtual std::pair dedx(const reco::DeDxHitCollection& Hits){ + std::vector vect_probs; + for(size_t i = 0; i< Hits.size(); i ++){ + float path = Hits[i].pathLength() * 10.0; //x10 in order to be compatible with the map content + float charge = Hits[i].charge() / (10.0*meVperADCStrip); // 10/meVperADCStrip in order to be compatible with the map content in ADC/mm instead of MeV/cm + + int BinX = Prob_ChargePath->GetXaxis()->FindBin(Hits[i].momentum()); + int BinY = Prob_ChargePath->GetYaxis()->FindBin(path); + int BinZ = Prob_ChargePath->GetZaxis()->FindBin(charge); + float prob = Prob_ChargePath->GetBinContent(BinX,BinY,BinZ); + if(prob>=0)vect_probs.push_back(prob); + } + + size_t size = vect_probs.size(); + if(size<=0) return std::make_pair( -1 , -1); + float TotalProb = 1; + for(size_t i=0;i("MeVperADCStrip"); //currently needed until the map on the database are redone + Reccord = iConfig.getParameter ("Reccord"); + ProbabilityMode = iConfig.getParameter ("ProbabilityMode"); + Prob_ChargePath = NULL; + } + + virtual void beginRun(edm::Run const& run, const edm::EventSetup& iSetup){ + DeDxTools::buildDiscrimMap(run, iSetup, Reccord, ProbabilityMode, Prob_ChargePath); + } + + virtual std::pair dedx(const reco::DeDxHitCollection& Hits){ + std::vector vect_probs; + for(size_t i = 0; i< Hits.size(); i ++){ + float path = Hits[i].pathLength() * 10.0; //x10 in order to be compatible with the map content + float charge = Hits[i].charge() / (10.0*meVperADCStrip); // 10/meVperADCStrip in order to be compatible with the map content in ADC/mm instead of MeV/cm + + int BinX = Prob_ChargePath->GetXaxis()->FindBin(Hits[i].momentum()); + int BinY = Prob_ChargePath->GetYaxis()->FindBin(path); + int BinZ = Prob_ChargePath->GetZaxis()->FindBin(charge); + float prob = Prob_ChargePath->GetBinContent(BinX,BinY,BinZ); + if(prob>=0)vect_probs.push_back(prob); + } + + size_t size = vect_probs.size(); + if(size<=0) return std::make_pair( -1 , -1); + std::sort(vect_probs.begin(), vect_probs.end(), std::less() ); + float TotalProb = 1.0/(12*size); + for(size_t i=1;i<=size;i++){ + TotalProb += pow(vect_probs[i-1] - ((2.0*i-1.0)/(2.0*size)),2); + } + TotalProb *= (3.0/size); + return std::make_pair( TotalProb , -1); + } + +private: + float meVperADCStrip; + std::string Reccord; + std::string ProbabilityMode; + TH3F* Prob_ChargePath; +}; + +#endif diff --git a/RecoTracker/DeDx/interface/TruncatedAverageDeDxEstimator.h b/RecoTracker/DeDx/interface/TruncatedAverageDeDxEstimator.h index 9b544f4b61e7b..835ce58948eed 100644 --- a/RecoTracker/DeDx/interface/TruncatedAverageDeDxEstimator.h +++ b/RecoTracker/DeDx/interface/TruncatedAverageDeDxEstimator.h @@ -8,7 +8,9 @@ class TruncatedAverageDeDxEstimator: public BaseDeDxEstimator { public: - TruncatedAverageDeDxEstimator(float fraction): m_fraction(fraction) {} + TruncatedAverageDeDxEstimator(const edm::ParameterSet& iConfig){ + m_fraction = iConfig.getParameter("fraction"); + } virtual std::pair dedx(const reco::DeDxHitCollection& Hits){ int nTrunc = int( Hits.size()*m_fraction); diff --git a/RecoTracker/DeDx/interface/UnbinnedFitDeDxEstimator.h b/RecoTracker/DeDx/interface/UnbinnedFitDeDxEstimator.h index ce20f9426bf76..3e09599857dab 100644 --- a/RecoTracker/DeDx/interface/UnbinnedFitDeDxEstimator.h +++ b/RecoTracker/DeDx/interface/UnbinnedFitDeDxEstimator.h @@ -14,7 +14,7 @@ class UnbinnedFitDeDxEstimator: public BaseDeDxEstimator { public: - UnbinnedFitDeDxEstimator() { + UnbinnedFitDeDxEstimator(const edm::ParameterSet& iConfig) { fitter.setFunction((f1 = new TF1("myLandau","TMath::Landau(x,[0],[1],1)",0,255))); } diff --git a/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearner.cc b/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearner.cc deleted file mode 100644 index c4d06f98701bc..0000000000000 --- a/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearner.cc +++ /dev/null @@ -1,229 +0,0 @@ -// -*- C++ -*- -// -// Package: DeDxDiscriminatorLearner -// Class: DeDxDiscriminatorLearner -// -/**\class DeDxDiscriminatorLearner DeDxDiscriminatorLearner.cc RecoTracker/DeDxDiscriminatorLearner/src/DeDxDiscriminatorLearner.cc - - Description: - - Implementation: - -*/ -// -// Original Author: Loic Quertenmont(querten) -// Created: Mon October 20 10:09:02 CEST 2008 -// - - -// system include files -#include - -#include "RecoTracker/DeDx/plugins/DeDxDiscriminatorLearner.h" - -//#include "DataFormats/TrackReco/interface/DeDxData.h" -#include "DataFormats/TrackReco/interface/Track.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" - -#include "FWCore/Framework/interface/ESHandle.h" -#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" -#include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" - -using namespace reco; -using namespace std; -using namespace edm; - -DeDxDiscriminatorLearner::DeDxDiscriminatorLearner(const edm::ParameterSet& iConfig) : ConditionDBWriter(iConfig) -{ - m_tracksTag = consumes(iConfig.getParameter("tracks")); - m_trajTrackAssociationTag = consumes(iConfig.getParameter("trajectoryTrackAssociation")); - - usePixel = iConfig.getParameter("UsePixel"); - useStrip = iConfig.getParameter("UseStrip"); - if(!usePixel && !useStrip) - edm::LogWarning("DeDxDiscriminatorLearner") << "Pixel Hits AND Strip Hits will not be used to estimate dEdx --> BUG, Please Update the config file"; - - P_Min = iConfig.getParameter ("P_Min" ); - P_Max = iConfig.getParameter ("P_Max" ); - P_NBins = iConfig.getParameter ("P_NBins"); - Path_Min = iConfig.getParameter ("Path_Min" ); - Path_Max = iConfig.getParameter ("Path_Max" ); - Path_NBins = iConfig.getParameter ("Path_NBins"); - Charge_Min = iConfig.getParameter ("Charge_Min" ); - Charge_Max = iConfig.getParameter ("Charge_Max" ); - Charge_NBins = iConfig.getParameter ("Charge_NBins"); - - MinTrackMomentum = iConfig.getUntrackedParameter ("minTrackMomentum" , 3.0); - MaxTrackMomentum = iConfig.getUntrackedParameter ("maxTrackMomentum" , 99999.0); - MinTrackEta = iConfig.getUntrackedParameter ("minTrackEta" , -5.0); - MaxTrackEta = iConfig.getUntrackedParameter ("maxTrackEta" , 5.0); - MaxNrStrips = iConfig.getUntrackedParameter("maxNrStrips" , 255); - MinTrackHits = iConfig.getUntrackedParameter("MinTrackHits" , 4); - - algoMode = iConfig.getUntrackedParameter ("AlgoMode" , "SingleJob"); - HistoFile = iConfig.getUntrackedParameter ("HistoFile" , "out.root"); -} - - -DeDxDiscriminatorLearner::~DeDxDiscriminatorLearner(){} - -// ------------ method called once each job just before starting event loop ------------ - -void DeDxDiscriminatorLearner::algoBeginJob(const edm::EventSetup& iSetup) -{ -// Charge_Vs_Path = new TH2F ("Charge_Vs_Path" , "Charge_Vs_Path" , 24, 0.2, 1.4, 250, 0, 5000); - Charge_Vs_Path = new TH3F ("Charge_Vs_Path" , "Charge_Vs_Path" , P_NBins, P_Min, P_Max, Path_NBins, Path_Min, Path_Max, Charge_NBins, Charge_Min, Charge_Max); - - - edm::ESHandle tkGeom; - iSetup.get().get( tkGeom ); - m_tracker = tkGeom.product(); - - auto const & Det = tkGeom->dets(); - for(unsigned int i=0;igeographicalId(); - int SubDet = Detid.subdetId(); - - if( SubDet == StripSubdetector::TIB || SubDet == StripSubdetector::TID || - SubDet == StripSubdetector::TOB || SubDet == StripSubdetector::TEC ){ - - auto DetUnit = dynamic_cast (Det[i]); - if(!DetUnit)continue; - - const StripTopology& Topo = DetUnit->specificTopology(); - unsigned int NAPV = Topo.nstrips()/128; - - double Eta = DetUnit->position().basicVector().eta(); - double R = DetUnit->position().basicVector().transverse(); - double Thick = DetUnit->surface().bounds().thickness(); - - stModInfo* MOD = new stModInfo; - MOD->DetId = Detid.rawId(); - MOD->SubDet = SubDet; - MOD->Eta = Eta; - MOD->R = R; - MOD->Thickness = Thick; - MOD->NAPV = NAPV; - MODsColl[MOD->DetId] = MOD; - } - } - -} - -// ------------ method called once each job just after ending the event loop ------------ - -void DeDxDiscriminatorLearner::algoEndJob() -{ - - if( strcmp(algoMode.c_str(),"MultiJob")==0){ - TFile* Output = new TFile(HistoFile.c_str(), "RECREATE"); - Charge_Vs_Path->Write(); - Output->Write(); - Output->Close(); - }else if( strcmp(algoMode.c_str(),"WriteOnDB")==0){ - TFile* Input = new TFile(HistoFile.c_str() ); - Charge_Vs_Path = (TH3F*)(Input->FindObjectAny("Charge_Vs_Path"))->Clone(); - Input->Close(); - } - -} - -void DeDxDiscriminatorLearner::algoAnalyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) -{ - edm::ESHandle tkGeom; - iSetup.get().get( tkGeom ); - m_tracker = tkGeom.product(); - - - - Handle trajTrackAssociationHandle; - iEvent.getByToken(m_trajTrackAssociationTag, trajTrackAssociationHandle); - const TrajTrackAssociationCollection TrajToTrackMap = *trajTrackAssociationHandle.product(); - - edm::Handle trackCollectionHandle; - iEvent.getByToken(m_tracksTag,trackCollectionHandle); - - unsigned track_index = 0; - for(TrajTrackAssociationCollection::const_iterator it = TrajToTrackMap.begin(); it!=TrajToTrackMap.end(); ++it, track_index++) { - - const Track track = *it->val; - const Trajectory traj = *it->key; - - if(track.eta() MaxTrackEta ){continue;} - if(track.p() MaxTrackMomentum){continue;} - if(track.found() measurements = traj.measurements(); - for(vector::const_iterator measurement_it = measurements.begin(); measurement_it!=measurements.end(); measurement_it++) - { - TrajectoryStateOnSurface trajState = measurement_it->updatedState(); - if( !trajState.isValid() ) continue; - - const TrackingRecHit* hit = (*measurement_it->recHit()).hit(); - const SiStripRecHit2D* sistripsimplehit = dynamic_cast(hit); - const SiStripMatchedRecHit2D* sistripmatchedhit = dynamic_cast(hit); - const SiStripRecHit1D* sistripsimple1dhit = dynamic_cast(hit); - - if(sistripsimplehit){ - Learn((sistripsimplehit->cluster()).get(), trajState); - }else if(sistripmatchedhit){ - Learn(&sistripmatchedhit->monoCluster(),trajState); - Learn(&sistripmatchedhit->stereoCluster(),trajState); - }else if(sistripsimple1dhit){ - Learn((sistripsimple1dhit->cluster()).get(), trajState); - }else{ - } - - } - } - -} - - -void DeDxDiscriminatorLearner::Learn(const SiStripCluster* cluster,TrajectoryStateOnSurface trajState) -{ - // Get All needed variables - LocalVector trackDirection = trajState.localDirection(); - double cosine = trackDirection.z()/trackDirection.mag(); - const vector& ampls = cluster->amplitudes(); - uint32_t detId = 0; // zero since long time cluster->geographicalId(); - int firstStrip = cluster->firstStrip(); - stModInfo* MOD = MODsColl[detId]; - // Sanity Checks - if( ampls.size()>MaxNrStrips) { return; } -// if( DeDxDiscriminatorTools::IsSaturatingStrip (ampls)) { return; } - if( DeDxDiscriminatorTools::IsSpanningOver2APV (firstStrip, ampls.size())) { return; } - if(!DeDxDiscriminatorTools::IsFarFromBorder (trajState, m_tracker->idToDetUnit(DetId(detId)) )) { return; } - // Fill Histo Path Vs Charge/Path - double charge = DeDxDiscriminatorTools::charge(ampls); - double path = DeDxDiscriminatorTools::path(cosine,MOD->Thickness); - Charge_Vs_Path->Fill(trajState.localMomentum().mag(),path,charge/path); -} - - -PhysicsTools::Calibration::HistogramD3D* DeDxDiscriminatorLearner::getNewObject() -{ -// if( strcmp(algoMode.c_str(),"MultiJob")==0)return NULL; - - PhysicsTools::Calibration::HistogramD3D* obj; - obj = new PhysicsTools::Calibration::HistogramD3D( - Charge_Vs_Path->GetNbinsX(), Charge_Vs_Path->GetXaxis()->GetXmin(), Charge_Vs_Path->GetXaxis()->GetXmax(), - Charge_Vs_Path->GetNbinsY(), Charge_Vs_Path->GetYaxis()->GetXmin(), Charge_Vs_Path->GetYaxis()->GetXmax(), - Charge_Vs_Path->GetNbinsZ(), Charge_Vs_Path->GetZaxis()->GetXmin(), Charge_Vs_Path->GetZaxis()->GetXmax()); - - for(int ix=0; ix<=Charge_Vs_Path->GetNbinsX()+1; ix++){ - for(int iy=0; iy<=Charge_Vs_Path->GetNbinsY()+1; iy++){ - for(int iz=0; iz<=Charge_Vs_Path->GetNbinsZ()+1; iz++){ - obj->setBinContent(ix, iy, iz, Charge_Vs_Path->GetBinContent(ix,iy, iz) ); -// if(Charge_Vs_Path->GetBinContent(ix,iy)!=0)printf("%i %i %i --> %f\n",ix,iy, iz, Charge_Vs_Path->GetBinContent(ix,iy,iz)); - } - } - } - - return obj; -} - - - -//define this as a plug-in -DEFINE_FWK_MODULE(DeDxDiscriminatorLearner); diff --git a/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearnerFromCalibTree.h b/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearnerFromCalibTree.h deleted file mode 100644 index a5b9256b88a8b..0000000000000 --- a/RecoTracker/DeDx/plugins/DeDxDiscriminatorLearnerFromCalibTree.h +++ /dev/null @@ -1,105 +0,0 @@ -#ifndef TrackRecoDeDx_DeDxDiscriminatorLearnerFromCalibTree_H -#define TrackRecoDeDx_DeDxDiscriminatorLearnerFromCalibTree_H - -#include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/MakerMacros.h" -#include "FWCore/ParameterSet/interface/ParameterSet.h" - -#include "CommonTools/ConditionDBWriter/interface/ConditionDBWriter.h" -#include "CondFormats/PhysicsToolsObjects/interface/Histogram3D.h" - -#include "TrackingTools/PatternTools/interface/Trajectory.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" -#include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h" - -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit1D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2D.h" - -#include "RecoTracker/DeDx/interface/DeDxDiscriminatorTools.h" - -#include "TFile.h" -#include "TH3F.h" -#include "TTree.h" -#include "TChain.h" -#include - -//using namespace edm; -//using namespace reco; -//using namespace std; -//using namespace __gnu_cxx; - - -class DeDxDiscriminatorLearnerFromCalibTree : public ConditionDBWriter { - -public: - - explicit DeDxDiscriminatorLearnerFromCalibTree(const edm::ParameterSet&); - ~DeDxDiscriminatorLearnerFromCalibTree(); - -private: - virtual void algoBeginJob(const edm::EventSetup&) ; - virtual void algoAnalyze(const edm::Event&, const edm::EventSetup&); - virtual void algoEndJob(); - - void algoAnalyzeTheTree(); - void MakeCalibrationMap(); - - PhysicsTools::Calibration::HistogramD3D * getNewObject(); - - - // ----------member data --------------------------- - edm::EDGetTokenT m_trajTrackAssociationTag; - edm::EDGetTokenT m_tracksTag; - - bool usePixel; - bool useStrip; - double MeVperADCPixel; - double MeVperADCStrip; - - const TrackerGeometry* m_tracker; - - double MinTrackTMomentum; - double MaxTrackTMomentum; - double MinTrackEta; - double MaxTrackEta; - unsigned int MaxNrStrips; - unsigned int MinTrackHits; - double MaxTrackChiOverNdf; - - bool useCalibration; - std::string m_calibrationPath; - - std::vector VInputFiles; - - - double P_Min; - double P_Max; - int P_NBins; - double Path_Min; - double Path_Max; - int Path_NBins; - double Charge_Min; - double Charge_Max; - int Charge_NBins; - - - std::string algoMode; - std::string HistoFile; - - TH3F* Charge_Vs_Path; - -private : - struct stAPVInfo{int DetId; int SubDet; float Eta; float R; float Thickness; int APVId; double CalibGain;}; - - class isEqual{ - public: - template bool operator () (const T& PseudoDetId1, const T& PseudoDetId2) { return PseudoDetId1==PseudoDetId2; } - }; - - __gnu_cxx::hash_map, isEqual > APVsColl; -}; - -#endif - diff --git a/RecoTracker/DeDx/plugins/DeDxDiscriminatorProducer.cc b/RecoTracker/DeDx/plugins/DeDxDiscriminatorProducer.cc deleted file mode 100644 index 7ee4bc582db4b..0000000000000 --- a/RecoTracker/DeDx/plugins/DeDxDiscriminatorProducer.cc +++ /dev/null @@ -1,456 +0,0 @@ -// -*- C++ -*- -// -// Package: DeDxDiscriminatorProducer -// Class: DeDxDiscriminatorProducer -// -/**\class DeDxDiscriminatorProducer DeDxDiscriminatorProducer.cc RecoTracker/DeDxDiscriminatorProducer/src/DeDxDiscriminatorProducer.cc - - Description: - - Implementation: - -*/ -// -// Original Author: andrea -// Created: Thu May 31 14:09:02 CEST 2007 -// Code Updates: loic Quertenmont (querten) -// Created: Thu May 10 14:09:02 CEST 2008 -// -// - - -// system include files -#include -#include "DataFormats/Common/interface/ValueMap.h" -#include "DataFormats/TrackReco/interface/DeDxData.h" - -#include "RecoTracker/DeDx/plugins/DeDxDiscriminatorProducer.h" -#include "DataFormats/TrackReco/interface/Track.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" - -#include "FWCore/Framework/interface/ESHandle.h" -#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" -#include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" - -#include "CondFormats/DataRecord/interface/SiStripDeDxMip_3D_Rcd.h" -#include "CondFormats/DataRecord/interface/SiStripDeDxElectron_3D_Rcd.h" -#include "CondFormats/DataRecord/interface/SiStripDeDxProton_3D_Rcd.h" -#include "CondFormats/DataRecord/interface/SiStripDeDxPion_3D_Rcd.h" -#include "CondFormats/DataRecord/interface/SiStripDeDxKaon_3D_Rcd.h" - - -#include "TFile.h" - -using namespace reco; -using namespace std; -using namespace edm; - -DeDxDiscriminatorProducer::DeDxDiscriminatorProducer(const edm::ParameterSet& iConfig) -{ - - produces >(); - - m_tracksTag = consumes(iConfig.getParameter("tracks")); - m_trajTrackAssociationTag = consumes(iConfig.getParameter("trajectoryTrackAssociation")); - - usePixel = iConfig.getParameter("UsePixel"); - useStrip = iConfig.getParameter("UseStrip"); - if(!usePixel && !useStrip) - edm::LogWarning("DeDxHitsProducer") << "Pixel Hits AND Strip Hits will not be used to estimate dEdx --> BUG, Please Update the config file"; - - Formula = iConfig.getUntrackedParameter("Formula" , 0); - Reccord = iConfig.getUntrackedParameter ("Reccord" , "SiStripDeDxMip_3D_Rcd"); - ProbabilityMode = iConfig.getUntrackedParameter ("ProbabilityMode" , "Accumulation"); - - - MinTrackMomentum = iConfig.getUntrackedParameter ("minTrackMomentum" , 0.0); - MaxTrackMomentum = iConfig.getUntrackedParameter ("maxTrackMomentum" , 99999.0); - MinTrackEta = iConfig.getUntrackedParameter ("minTrackEta" , -5.0); - MaxTrackEta = iConfig.getUntrackedParameter ("maxTrackEta" , 5.0); - MaxNrStrips = iConfig.getUntrackedParameter("maxNrStrips" , 255); - MinTrackHits = iConfig.getUntrackedParameter("MinTrackHits" , 3); - - shapetest = iConfig.getParameter("ShapeTest"); - useCalibration = iConfig.getParameter("UseCalibration"); - m_calibrationPath = iConfig.getParameter("calibrationPath"); - - Prob_ChargePath = NULL; -} - - -DeDxDiscriminatorProducer::~DeDxDiscriminatorProducer(){} - -// ------------ method called once each job just before starting event loop ------------ -void DeDxDiscriminatorProducer::beginRun(edm::Run const& run, const edm::EventSetup& iSetup) -{ - edm::ESHandle DeDxMapHandle_; - if( strcmp(Reccord.c_str(),"SiStripDeDxMip_3D_Rcd")==0){ - iSetup.get() .get(DeDxMapHandle_); - }else if(strcmp(Reccord.c_str(),"SiStripDeDxPion_3D_Rcd")==0){ - iSetup.get().get(DeDxMapHandle_); - }else if(strcmp(Reccord.c_str(),"SiStripDeDxKaon_3D_Rcd")==0){ - iSetup.get().get(DeDxMapHandle_); - }else if(strcmp(Reccord.c_str(),"SiStripDeDxProton_3D_Rcd")==0){ - iSetup.get().get(DeDxMapHandle_); - }else if(strcmp(Reccord.c_str(),"SiStripDeDxElectron_3D_Rcd")==0){ - iSetup.get().get(DeDxMapHandle_); - }else{ -// printf("The reccord %s is not known by the DeDxDiscriminatorProducer\n", Reccord.c_str()); -// printf("Program will exit now\n"); - exit(0); - } - DeDxMap_ = *DeDxMapHandle_.product(); - - double xmin = DeDxMap_.rangeX().min; - double xmax = DeDxMap_.rangeX().max; - double ymin = DeDxMap_.rangeY().min; - double ymax = DeDxMap_.rangeY().max; - double zmin = DeDxMap_.rangeZ().min; - double zmax = DeDxMap_.rangeZ().max; - - if(Prob_ChargePath)delete Prob_ChargePath; - Prob_ChargePath = new TH3D ("Prob_ChargePath" , "Prob_ChargePath" , DeDxMap_.numberOfBinsX(), xmin, xmax, DeDxMap_.numberOfBinsY() , ymin, ymax, DeDxMap_.numberOfBinsZ(), zmin, zmax); - - - - if(strcmp(ProbabilityMode.c_str(),"Accumulation")==0){ -// printf("LOOOP ON P\n"); - for(int i=0;i<=Prob_ChargePath->GetXaxis()->GetNbins()+1;i++){ -// printf("LOOOP ON PATH\n"); - for(int j=0;j<=Prob_ChargePath->GetYaxis()->GetNbins()+1;j++){ -// printf("LOOOP ON CHARGE\n"); - - double Ni = 0; - for(int k=0;k<=Prob_ChargePath->GetZaxis()->GetNbins()+1;k++){ Ni+=DeDxMap_.binContent(i,j,k);} - - for(int k=0;k<=Prob_ChargePath->GetZaxis()->GetNbins()+1;k++){ - double tmp = 0; - for(int l=0;l<=k;l++){ tmp+=DeDxMap_.binContent(i,j,l);} - - if(Ni>0){ - Prob_ChargePath->SetBinContent (i, j, k, tmp/Ni); -// printf("P=%6.2f Path=%6.2f Charge%8.2f --> Prob=%8.3f\n",Prob_ChargePath->GetXaxis()->GetBinCenter(i), Prob_ChargePath->GetYaxis()->GetBinCenter(j), Prob_ChargePath->GetZaxis()->GetBinCenter(k), tmp/Ni); - }else{ - Prob_ChargePath->SetBinContent (i, j, k, 0); - } - } - } - } - }else if(strcmp(ProbabilityMode.c_str(),"Integral")==0){ -// printf("LOOOP ON P\n"); - for(int i=0;i<=Prob_ChargePath->GetXaxis()->GetNbins()+1;i++){ -// printf("LOOOP ON PATH\n"); - for(int j=0;j<=Prob_ChargePath->GetYaxis()->GetNbins()+1;j++){ -// printf("LOOOP ON CHARGE\n"); - - double Ni = 0; - for(int k=0;k<=Prob_ChargePath->GetZaxis()->GetNbins()+1;k++){ Ni+=DeDxMap_.binContent(i,j,k);} - - for(int k=0;k<=Prob_ChargePath->GetZaxis()->GetNbins()+1;k++){ - double tmp = DeDxMap_.binContent(i,j,k); - - if(Ni>0){ - Prob_ChargePath->SetBinContent (i, j, k, tmp/Ni); -// printf("P=%6.2f Path=%6.2f Charge%8.2f --> Prob=%8.3f\n",Prob_ChargePath->GetXaxis()->GetBinCenter(i), Prob_ChargePath->GetYaxis()->GetBinCenter(j), Prob_ChargePath->GetZaxis()->GetBinCenter(k), tmp/Ni); - }else{ - Prob_ChargePath->SetBinContent (i, j, k, 0); - } - } - } - } - }else{ -// printf("The ProbabilityMode: %s is unknown\n",ProbabilityMode.c_str()); -// printf("The program will stop now\n"); - exit(0); - } - - - -/* - for(int i=0;iGetXaxis()->GetNbins();i++){ - for(int j=0;jGetYaxis()->GetNbins();j++){ - double tmp = DeDxMap_.binContent(i,j); - Prob_ChargePath->SetBinContent (i, j, tmp); - printf("%i %i --> %f\n",i,j,tmp); - } - } -*/ - - - - if(MODsColl.size()==0){ - edm::ESHandle tkGeom; - iSetup.get().get( tkGeom ); - m_tracker = tkGeom.product(); - - auto const & Det = tkGeom->dets(); - for(unsigned int i=0;igeographicalId(); - int SubDet = Detid.subdetId(); - - if( SubDet == StripSubdetector::TIB || SubDet == StripSubdetector::TID || - SubDet == StripSubdetector::TOB || SubDet == StripSubdetector::TEC ){ - - auto DetUnit = dynamic_cast (Det[i]); - if(!DetUnit)continue; - - const StripTopology& Topo = DetUnit->specificTopology(); - unsigned int NAPV = Topo.nstrips()/128; - - double Eta = DetUnit->position().basicVector().eta(); - double R = DetUnit->position().basicVector().transverse(); - double Thick = DetUnit->surface().bounds().thickness(); - - stModInfo* MOD = new stModInfo; - MOD->DetId = Detid.rawId(); - MOD->SubDet = SubDet; - MOD->Eta = Eta; - MOD->R = R; - MOD->Thickness = Thick; - MOD->NAPV = NAPV; - MODsColl[MOD->DetId] = MOD; - } - } - - MakeCalibrationMap(); - } - -} - -void DeDxDiscriminatorProducer::endStream() -{ - MODsColl.clear(); -} - - - -void DeDxDiscriminatorProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) -{ - auto_ptr > trackDeDxDiscrimAssociation(new ValueMap ); - ValueMap::Filler filler(*trackDeDxDiscrimAssociation); - - Handle trajTrackAssociationHandle; - iEvent.getByToken(m_trajTrackAssociationTag, trajTrackAssociationHandle); - const TrajTrackAssociationCollection TrajToTrackMap = *trajTrackAssociationHandle.product(); - - edm::Handle trackCollectionHandle; - iEvent.getByToken(m_tracksTag,trackCollectionHandle); - - edm::ESHandle tkGeom; - iSetup.get().get( tkGeom ); - m_tracker = tkGeom.product(); - - std::vector dEdxDiscrims( TrajToTrackMap.size() ); - - unsigned track_index = 0; - for(TrajTrackAssociationCollection::const_iterator it = TrajToTrackMap.begin(); it!=TrajToTrackMap.end(); ++it, track_index++) { - dEdxDiscrims[track_index] = DeDxData(-1, -2, 0 ); - - const Track track = *it->val; - const Trajectory traj = *it->key; - - if(track.eta() MaxTrackEta ){continue;} - if(track.p() MaxTrackMomentum){continue;} - if(track.found() vect_probs; - vector measurements = traj.measurements(); - - unsigned int NClusterSaturating = 0; - for(vector::const_iterator measurement_it = measurements.begin(); measurement_it!=measurements.end(); measurement_it++){ - - TrajectoryStateOnSurface trajState = measurement_it->updatedState(); - if( !trajState.isValid() ) continue; - - const TrackingRecHit* hit = (*measurement_it->recHit()).hit(); - const SiStripRecHit2D* sistripsimplehit = dynamic_cast(hit); - const SiStripMatchedRecHit2D* sistripmatchedhit = dynamic_cast(hit); - const SiStripRecHit1D* sistripsimple1dhit = dynamic_cast(hit); - - double Prob; - if(sistripsimplehit){ - Prob = GetProbability(DeDxTools::GetCluster(sistripsimplehit), trajState,sistripsimplehit->geographicalId()); - if(shapetest && !(DeDxTools::shapeSelection(DeDxTools::GetCluster(sistripsimplehit)->amplitudes()))) Prob=-1.0; - if(Prob>=0) vect_probs.push_back(Prob); - - if(ClusterSaturatingStrip(DeDxTools::GetCluster(sistripsimplehit),sistripsimplehit->geographicalId())>0)NClusterSaturating++; - - }else if(sistripmatchedhit){ - Prob = GetProbability(DeDxTools::GetCluster(sistripmatchedhit->monoHit()), trajState, sistripmatchedhit->monoId()); - if(shapetest && !(DeDxTools::shapeSelection(DeDxTools::GetCluster(sistripmatchedhit->monoHit())->amplitudes()))) Prob=-1.0; - if(Prob>=0) vect_probs.push_back(Prob); - - Prob = GetProbability(DeDxTools::GetCluster(sistripmatchedhit->stereoHit()), trajState,sistripmatchedhit->stereoId()); - if(Prob>=0) vect_probs.push_back(Prob); - - if(ClusterSaturatingStrip(DeDxTools::GetCluster(sistripmatchedhit->monoHit()),sistripmatchedhit->monoId()) >0)NClusterSaturating++; - if(ClusterSaturatingStrip(DeDxTools::GetCluster(sistripmatchedhit->stereoHit()),sistripmatchedhit->stereoId())>0)NClusterSaturating++; - }else if(sistripsimple1dhit){ - Prob = GetProbability(DeDxTools::GetCluster(sistripsimple1dhit), trajState, sistripsimple1dhit->geographicalId()); - if(shapetest && !(DeDxTools::shapeSelection(DeDxTools::GetCluster(sistripsimple1dhit)->amplitudes()))) Prob=-1.0; - if(Prob>=0) vect_probs.push_back(Prob); - if(ClusterSaturatingStrip(DeDxTools::GetCluster(sistripsimple1dhit),sistripsimple1dhit->geographicalId())>0)NClusterSaturating++; - }else{ - } - } - - double estimator = ComputeDiscriminator(vect_probs); - int size = vect_probs.size(); - float Error = -1; - - //WARNING: Since the dEdX Error is not properly computed for the moment - //It was decided to store the number of saturating cluster in that dataformat - Error = NClusterSaturating; - dEdxDiscrims[track_index] = DeDxData(estimator, Error, size ); - -// printf("%i --> %g\n",size,estimator); - } - - filler.insert(trackCollectionHandle, dEdxDiscrims.begin(), dEdxDiscrims.end()); - filler.fill(); - iEvent.put(trackDeDxDiscrimAssociation); -} - - -int DeDxDiscriminatorProducer::ClusterSaturatingStrip(const SiStripCluster* cluster, - const uint32_t & detId){ - const vector& ampls = cluster->amplitudes(); - - stModInfo* MOD = NULL; - if(useCalibration)MOD = MODsColl[detId]; - - int SaturatingStrip = 0; - for(unsigned int i=0;iGain);} - if(StripCharge>=254)SaturatingStrip++; - } - return SaturatingStrip; -} - -double DeDxDiscriminatorProducer::GetProbability(const SiStripCluster* cluster, TrajectoryStateOnSurface trajState, - const uint32_t & detId) -{ - // Get All needed variables - LocalVector trackDirection = trajState.localDirection(); - double cosine = trackDirection.z()/trackDirection.mag(); - const vector& ampls = cluster->amplitudes(); - // uint32_t detId = cluster->geographicalId(); - // int firstStrip = cluster->firstStrip(); - stModInfo* MOD = MODsColl[detId]; - - - // Sanity Checks - if( ampls.size()>MaxNrStrips) {return -1;} -// if( DeDxDiscriminatorTools::IsSaturatingStrip (ampls)) {return -1;} -// if( DeDxDiscriminatorTools::IsSpanningOver2APV (firstStrip, ampls.size())) {return -1;} -// if(!DeDxDiscriminatorTools::IsFarFromBorder (trajState, m_tracker->idToDetUnit(DetId(detId)) )) {return -1;} - - - // Find Probability for this given Charge and Path - double charge = 0; - if(useCalibration){ - for(unsigned int i=0;iGain); - if(CalibratedCharge>=1024){ - CalibratedCharge = 255; - }else if(CalibratedCharge>254){ - CalibratedCharge = 254; - } - charge+=CalibratedCharge; - } - }else{ - charge = DeDxDiscriminatorTools::charge(ampls); - } - double path = DeDxDiscriminatorTools::path(cosine,MOD->Thickness); - - int BinX = Prob_ChargePath->GetXaxis()->FindBin(trajState.localMomentum().mag()); - int BinY = Prob_ChargePath->GetYaxis()->FindBin(path); - int BinZ = Prob_ChargePath->GetZaxis()->FindBin(charge/path); - return Prob_ChargePath->GetBinContent(BinX,BinY,BinZ); -} - - -double DeDxDiscriminatorProducer::ComputeDiscriminator(std::vector& vect_probs) -{ - double estimator = -1; - int size = vect_probs.size(); - if(size<=0)return estimator; - - if(Formula==0){ - double P = 1; - for(int i=0;i() ); - for(int i=0;i() ); - double P = 1.0/(12*size); - for(int i=1;i<=size;i++){ - P += pow(vect_probs[i-1] - ((2.0*i-1.0)/(2.0*size)),2); - } - P *= (3.0/size); - estimator = P; - }else{ - std::sort(vect_probs.begin(), vect_probs.end(), std::less() ); - double P = 1.0/(12*size); - for(int i=1;i<=size;i++){ - P += vect_probs[i-1] * pow(vect_probs[i-1] - ((2.0*i-1.0)/(2.0*size)),2); - } - P *= (3.0/size); - estimator = P; - } - - return estimator; -} - - -void DeDxDiscriminatorProducer::MakeCalibrationMap(){ - if(!useCalibration)return; - - - TChain* t1 = new TChain("SiStripCalib/APVGain"); - t1->Add(m_calibrationPath.c_str()); - - unsigned int tree_DetId; - unsigned char tree_APVId; - double tree_Gain; - - t1->SetBranchAddress("DetId" ,&tree_DetId ); - t1->SetBranchAddress("APVId" ,&tree_APVId ); - t1->SetBranchAddress("Gain" ,&tree_Gain ); - - for (unsigned int ientry = 0; ientry < t1->GetEntries(); ientry++) { - t1->GetEntry(ientry); - stModInfo* MOD = MODsColl[tree_DetId]; - MOD->Gain = tree_Gain; - } - - delete t1; - -} - -//define this as a plug-in -DEFINE_FWK_MODULE(DeDxDiscriminatorProducer); diff --git a/RecoTracker/DeDx/plugins/DeDxDiscriminatorProducer.h b/RecoTracker/DeDx/plugins/DeDxDiscriminatorProducer.h deleted file mode 100644 index d53088af97906..0000000000000 --- a/RecoTracker/DeDx/plugins/DeDxDiscriminatorProducer.h +++ /dev/null @@ -1,114 +0,0 @@ -#ifndef TrackRecoDeDx_DeDxDiscriminatorProducer_H -#define TrackRecoDeDx_DeDxDiscriminatorProducer_H - -#include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/stream/EDProducer.h" -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/MakerMacros.h" -#include "FWCore/ParameterSet/interface/ParameterSet.h" - -#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" -#include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h" -#include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetUnit.h" - -#include "Geometry/CommonDetUnit/interface/GeomDetUnit.h" -#include "Geometry/CommonDetUnit/interface/GeomDetType.h" -#include "Geometry/CommonTopologies/interface/StripTopology.h" - -#include "DataFormats/GeometrySurface/interface/TrapezoidalPlaneBounds.h" -#include "DataFormats/GeometrySurface/interface/RectangularPlaneBounds.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit1D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2D.h" - -#include "TrackingTools/PatternTools/interface/Trajectory.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" -#include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h" - -#include "CondFormats/PhysicsToolsObjects/interface/Histogram3D.h" - -#include "RecoTracker/DeDx/interface/DeDxDiscriminatorTools.h" -#include "RecoTracker/DeDx/interface/DeDxTools.h" - - -#include "TH3F.h" -#include "TChain.h" - -#include - - -// using namespace edm; -// using namespace reco; -// using namespace std; -// using namespace __gnu_cxx; - - - - -class DeDxDiscriminatorProducer : public edm::stream::EDProducer<> { - -public: - - explicit DeDxDiscriminatorProducer(const edm::ParameterSet&); - ~DeDxDiscriminatorProducer(); - -private: - virtual void beginRun(edm::Run const& run, const edm::EventSetup&) override; - virtual void produce(edm::Event&, const edm::EventSetup&) override; - virtual void endStream() override; - - double GetProbability(const SiStripCluster* cluster, TrajectoryStateOnSurface trajState,const uint32_t &); - double ComputeDiscriminator (std::vector& vect_probs); - int ClusterSaturatingStrip(const SiStripCluster* cluster,const uint32_t &); - void MakeCalibrationMap(); - - - - // ----------member data --------------------------- - edm::EDGetTokenT m_trajTrackAssociationTag; - edm::EDGetTokenT m_tracksTag; - - bool usePixel; - bool useStrip; - double MeVperADCPixel; - double MeVperADCStrip; - - std::string m_calibrationPath; - bool useCalibration; - bool shapetest; - - - const TrackerGeometry* m_tracker; - - PhysicsTools::Calibration::HistogramD3D DeDxMap_; - - double MinTrackMomentum; - double MaxTrackMomentum; - double MinTrackEta; - double MaxTrackEta; - unsigned int MaxNrStrips; - unsigned int MinTrackHits; - double MaxTrackChiOverNdf; - - unsigned int Formula; - std::string Reccord; - std::string ProbabilityMode; - - - TH3D* Prob_ChargePath; - - - - private : - struct stModInfo{int DetId; int SubDet; float Eta; float R; float Thickness; int NAPV; double Gain;}; - - class isEqual{ - public: - template bool operator () (const T& PseudoDetId1, const T& PseudoDetId2) { return PseudoDetId1==PseudoDetId2; } - }; - - __gnu_cxx::hash_map, isEqual > MODsColl; -}; - -#endif - diff --git a/RecoTracker/DeDx/plugins/DeDxEstimatorProducer.cc b/RecoTracker/DeDx/plugins/DeDxEstimatorProducer.cc index 0fbde4f2a9f09..9a76e160f5a4e 100644 --- a/RecoTracker/DeDx/plugins/DeDxEstimatorProducer.cc +++ b/RecoTracker/DeDx/plugins/DeDxEstimatorProducer.cc @@ -20,55 +20,62 @@ // system include files -#include -#include "DataFormats/Common/interface/ValueMap.h" - #include "RecoTracker/DeDx/plugins/DeDxEstimatorProducer.h" -#include "DataFormats/TrackReco/interface/DeDxData.h" -#include "DataFormats/TrackReco/interface/TrackDeDxHits.h" -#include "DataFormats/TrackReco/interface/DeDxHit.h" -#include "DataFormats/TrackReco/interface/Track.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" - -#include "RecoTracker/DeDx/interface/GenericAverageDeDxEstimator.h" -#include "RecoTracker/DeDx/interface/TruncatedAverageDeDxEstimator.h" -#include "RecoTracker/DeDx/interface/MedianDeDxEstimator.h" -#include "RecoTracker/DeDx/interface/UnbinnedFitDeDxEstimator.h" - -#include "FWCore/Framework/interface/ESHandle.h" -#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" -#include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" - -#include "DataFormats/TrackerRecHit2D/interface/ProjectedSiStripRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit1D.h" using namespace reco; using namespace std; using namespace edm; + +void DeDxEstimatorProducer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) { + edm::ParameterSetDescription desc; + desc.add("estimator","generic"); + desc.add("tracks",edm::InputTag("generalTracks")); + desc.add("trajectoryTrackAssociation",edm::InputTag("generalTracks")); + desc.add("UseTrajectory",true); + desc.add("UsePixel",false); + desc.add("UseStrip",true); + desc.add("MeVperADCPixel",3.61e-06*265); + desc.add("MeVperADCStrip",3.61e-06); + desc.add("ShapeTest",true); + desc.add("UseCalibration",false); + desc.add("calibrationPath", ""); + desc.add("Reccord", "SiStripDeDxMip_3D_Rcd"); + desc.add("ProbabilityMode", "Accumulation"); + desc.add("fraction", 0.4); + desc.add("exponent",-2.0); + + descriptions.add("DeDxEstimatorProducer",desc); +} + + DeDxEstimatorProducer::DeDxEstimatorProducer(const edm::ParameterSet& iConfig) { produces >(); - string estimatorName = iConfig.getParameter("estimator"); - if(estimatorName == "median") m_estimator = new MedianDeDxEstimator(-2.); - if(estimatorName == "generic") m_estimator = new GenericAverageDeDxEstimator (iConfig.getParameter("exponent")); - if(estimatorName == "truncated") m_estimator = new TruncatedAverageDeDxEstimator(iConfig.getParameter("fraction")); - if(estimatorName == "unbinnedFit") m_estimator = new UnbinnedFitDeDxEstimator(); - - MaxNrStrips = iConfig.getUntrackedParameter("maxNrStrips" , 255); - MinTrackHits = iConfig.getUntrackedParameter("MinTrackHits" , 4); + if (estimatorName == "median") m_estimator = new MedianDeDxEstimator(iConfig); + else if(estimatorName == "generic") m_estimator = new GenericAverageDeDxEstimator (iConfig); + else if(estimatorName == "truncated") m_estimator = new TruncatedAverageDeDxEstimator(iConfig); + else if(estimatorName == "unbinnedFit") m_estimator = new UnbinnedFitDeDxEstimator(iConfig); + else if(estimatorName == "productDiscrim") m_estimator = new ProductDeDxDiscriminator(iConfig); + else if(estimatorName == "btagDiscrim") m_estimator = new BTagLikeDeDxDiscriminator(iConfig); + else if(estimatorName == "smirnovDiscrim") m_estimator = new SmirnovDeDxDiscriminator(iConfig); + else if(estimatorName == "asmirnovDiscrim") m_estimator = new ASmirnovDeDxDiscriminator(iConfig); + + //Commented for now, might be used in the future +// MaxNrStrips = iConfig.getUntrackedParameter("maxNrStrips" , 255); m_tracksTag = consumes(iConfig.getParameter("tracks")); m_trajTrackAssociationTag = consumes(iConfig.getParameter("trajectoryTrackAssociation")); + useTrajectory = iConfig.getParameter("UseTrajectory"); usePixel = iConfig.getParameter("UsePixel"); useStrip = iConfig.getParameter("UseStrip"); - MeVperADCPixel = iConfig.getParameter("MeVperADCPixel"); - MeVperADCStrip = iConfig.getParameter("MeVperADCStrip"); + meVperADCPixel = iConfig.getParameter("MeVperADCPixel"); + meVperADCStrip = iConfig.getParameter("MeVperADCStrip"); shapetest = iConfig.getParameter("ShapeTest"); useCalibration = iConfig.getParameter("UseCalibration"); @@ -76,6 +83,7 @@ DeDxEstimatorProducer::DeDxEstimatorProducer(const edm::ParameterSet& iConfig) if(!usePixel && !useStrip) edm::LogWarning("DeDxHitsProducer") << "Pixel Hits AND Strip Hits will not be used to estimate dEdx --> BUG, Please Update the config file"; + } @@ -87,40 +95,15 @@ DeDxEstimatorProducer::~DeDxEstimatorProducer() // ------------ method called once each job just before starting event loop ------------ void DeDxEstimatorProducer::beginRun(edm::Run const& run, const edm::EventSetup& iSetup) { - if(MODsColl.size()!=0)return; - - - edm::ESHandle tkGeom; - iSetup.get().get( tkGeom ); + if(useCalibration && calibGains.size()==0){ + edm::ESHandle tkGeom; + iSetup.get().get( tkGeom ); + m_off = tkGeom->offsetDU(GeomDetEnumerators::PixelBarrel); //index start at the first pixel - auto const & Det = tkGeom->dets(); - for(unsigned int i=0;igeographicalId(); - - auto StripDetUnit = dynamic_cast (Det[i]); - auto PixelDetUnit = dynamic_cast (Det[i]); - - double Thick=-1, Dist=-1, Norma=-1; - if(StripDetUnit){ - Dist = StripDetUnit->position().mag(); - Thick = StripDetUnit->surface().bounds().thickness(); - Norma = MeVperADCStrip/Thick; - }else if(PixelDetUnit){ - Dist = PixelDetUnit->position().mag(); - Thick = PixelDetUnit->surface().bounds().thickness(); - Norma = MeVperADCPixel/Thick; - } - - stModInfo* MOD = new stModInfo; - MOD->DetId = Detid.rawId(); - MOD->Thickness = Thick; - MOD->Distance = Dist; - MOD->Normalization = Norma; - MOD->Gain = 1; - MODsColl[MOD->DetId] = MOD; + DeDxTools::makeCalibrationMap(m_calibrationPath, *tkGeom, calibGains, m_off); } - MakeCalibrationMap(); + m_estimator->beginRun(run, iSetup); } @@ -130,106 +113,49 @@ void DeDxEstimatorProducer::produce(edm::Event& iEvent, const edm::EventSetup& i auto_ptr > trackDeDxEstimateAssociation(new ValueMap ); ValueMap::Filler filler(*trackDeDxEstimateAssociation); - Handle trajTrackAssociationHandle; - iEvent.getByToken(m_trajTrackAssociationTag, trajTrackAssociationHandle); - const TrajTrackAssociationCollection & TrajToTrackMap = *trajTrackAssociationHandle.product(); - edm::Handle trackCollectionHandle; iEvent.getByToken(m_tracksTag,trackCollectionHandle); - size_t n = TrajToTrackMap.size(); - std::vector dedxEstimate(n); - - //assume trajectory collection size is equal to track collection size and that order is kept - int j=0; - for(TrajTrackAssociationCollection::const_iterator cit=TrajToTrackMap.begin(); cit!=TrajToTrackMap.end(); cit++,j++){ - - const edm::Ref > traj = cit->key; - const reco::TrackRef track = cit->val; + Handle trajTrackAssociationHandle; + if(useTrajectory)iEvent.getByToken(m_trajTrackAssociationTag, trajTrackAssociationHandle); - DeDxHitCollection dedxHits; - vector hits; -// DeDxTools::trajectoryRawHits(traj, hits, usePixel, useStrip); + std::vector dedxEstimate( trackCollectionHandle->size() ); - const vector & measurements = traj->measurements(); - for(vector::const_iterator it = measurements.begin(); it!=measurements.end(); it++){ - TrajectoryStateOnSurface trajState=it->updatedState(); - if( !trajState.isValid()) continue; - - const TrackingRecHit * recHit=(*it->recHit()).hit(); - LocalVector trackDirection = trajState.localDirection(); - double cosine = trackDirection.z()/trackDirection.mag(); - - if(const SiStripMatchedRecHit2D* matchedHit=dynamic_cast(recHit)){ - if(!useStrip) continue; - DeDxTools::RawHits mono,stereo; - mono.trajectoryMeasurement = &(*it); - stereo.trajectoryMeasurement = &(*it); - mono.angleCosine = cosine; - stereo.angleCosine = cosine; - - mono.charge = getCharge(DeDxTools::GetCluster(matchedHit->monoHit()),mono.NSaturating,matchedHit->monoId()); - stereo.charge = getCharge(DeDxTools::GetCluster(matchedHit->stereoHit()),stereo.NSaturating,matchedHit->stereoId()); - - mono.detId= matchedHit->monoId(); - stereo.detId= matchedHit->stereoId(); - - if(shapetest && !(DeDxTools::shapeSelection((DeDxTools::GetCluster(matchedHit->stereoHit()))->amplitudes()))) hits.push_back(stereo); - if(shapetest && !(DeDxTools::shapeSelection((DeDxTools::GetCluster(matchedHit-> monoHit()))->amplitudes()))) hits.push_back(mono); - }else if(const ProjectedSiStripRecHit2D* projectedHit=dynamic_cast(recHit)) { - if(!useStrip) continue; - DeDxTools::RawHits mono; - - mono.trajectoryMeasurement = &(*it); - mono.angleCosine = cosine; - mono.charge = getCharge(DeDxTools::GetCluster(projectedHit->originalHit()),mono.NSaturating,projectedHit->originalId()); - mono.detId= projectedHit->originalId(); - if(shapetest && !(DeDxTools::shapeSelection((DeDxTools::GetCluster(projectedHit->originalHit()))->amplitudes()))) continue; - hits.push_back(mono); - }else if(const SiStripRecHit2D* singleHit=dynamic_cast(recHit)){ - if(!useStrip) continue; - DeDxTools::RawHits mono; - - mono.trajectoryMeasurement = &(*it); - mono.angleCosine = cosine; - mono.charge = getCharge(DeDxTools::GetCluster(singleHit),mono.NSaturating,singleHit->geographicalId()); - mono.detId= singleHit->geographicalId(); - if(shapetest && !(DeDxTools::shapeSelection((DeDxTools::GetCluster(singleHit))->amplitudes()))) continue; - hits.push_back(mono); - }else if(const SiStripRecHit1D* single1DHit=dynamic_cast(recHit)){ - if(!useStrip) continue; - DeDxTools::RawHits mono; - - mono.trajectoryMeasurement = &(*it); - mono.angleCosine = cosine; - mono.charge = getCharge(DeDxTools::GetCluster(single1DHit),mono.NSaturating,single1DHit->geographicalId()); - mono.detId= single1DHit->geographicalId(); - if(shapetest && !(DeDxTools::shapeSelection((DeDxTools::GetCluster(single1DHit))->amplitudes()))) continue; - hits.push_back(mono); - }else if(const SiPixelRecHit* pixelHit=dynamic_cast(recHit)){ - if(!usePixel) continue; - - DeDxTools::RawHits pixel; - - pixel.trajectoryMeasurement = &(*it); - pixel.angleCosine = cosine; - pixel.charge = pixelHit->cluster()->charge(); - pixel.NSaturating=-1; - pixel.detId= pixelHit->geographicalId(); - hits.push_back(pixel); - } - } - /////////////////////////////////////// + TrajTrackAssociationCollection::const_iterator cit; + if(useTrajectory)cit = trajTrackAssociationHandle->begin(); + for(unsigned int j=0;jsize();j++){ + const reco::TrackRef track = reco::TrackRef( trackCollectionHandle.product(), j ); int NClusterSaturating = 0; - for(size_t i=0; i < hits.size(); i++) - { - stModInfo* MOD = MODsColl[hits[i].detId]; - float pathLen = MOD->Thickness/std::abs(hits[i].angleCosine); - float charge = MOD->Normalization*hits[i].charge*std::abs(hits[i].angleCosine); - dedxHits.push_back( DeDxHit( charge, MOD->Distance, pathLen, hits[i].detId) ); - - if(hits[i].NSaturating>0)NClusterSaturating++; + DeDxHitCollection dedxHits; + + if(useTrajectory){ //trajectory allows to take into account the local direction of the particle on the module sensor --> muc much better 'dx' measurement + const edm::Ref > traj = cit->key; cit++; + const vector & measurements = traj->measurements(); + for(vector::const_iterator it = measurements.begin(); it!=measurements.end(); it++){ + TrajectoryStateOnSurface trajState=it->updatedState(); + if( !trajState.isValid()) continue; + + const TrackingRecHit * recHit=(*it->recHit()).hit(); + if(!recHit || !recHit->isValid())continue; + LocalVector trackDirection = trajState.localDirection(); + float cosine = trackDirection.z()/trackDirection.mag(); + + processHit(recHit, trajState.localMomentum().mag(), cosine, dedxHits, NClusterSaturating); + } + + }else{ //assume that the particles trajectory is a straight line originating from the center of the detector (can be improved) + for(unsigned int h=0;hrecHitsSize();h++){ + const TrackingRecHit* recHit = &(*(track->recHit(h))); + if(!recHit || !recHit->isValid())continue; + auto const & thit = static_cast(*recHit); + if(!thit.isValid())continue;//make sure it's a tracker hit + + const GlobalVector& ModuleNormal = recHit->detUnit()->surface().normalVector(); + float cosine = (track->px()*ModuleNormal.x()+track->py()*ModuleNormal.y()+track->pz()*ModuleNormal.z())/track->p(); + + processHit(recHit, track->p(), cosine, dedxHits, NClusterSaturating); + } } sort(dedxHits.begin(),dedxHits.end(),less()); @@ -238,84 +164,74 @@ void DeDxEstimatorProducer::produce(edm::Event& iEvent, const edm::EventSetup& i //WARNING: Since the dEdX Error is not properly computed for the moment //It was decided to store the number of saturating cluster in that dataformat val_and_error.second = NClusterSaturating; - dedxEstimate[j] = DeDxData(val_and_error.first, val_and_error.second, dedxHits.size() ); } + /////////////////////////////////////// + filler.insert(trackCollectionHandle, dedxEstimate.begin(), dedxEstimate.end()); - // really fill the association map + // fill the association map and put it into the event filler.fill(); - // put into the event iEvent.put(trackDeDxEstimateAssociation); } - -void DeDxEstimatorProducer::MakeCalibrationMap() -{ - if(!useCalibration)return; - - TChain* t1 = new TChain("SiStripCalib/APVGain"); - t1->Add(m_calibrationPath.c_str()); - - unsigned int tree_DetId; - unsigned char tree_APVId; - double tree_Gain; - - t1->SetBranchAddress("DetId" ,&tree_DetId ); - t1->SetBranchAddress("APVId" ,&tree_APVId ); - t1->SetBranchAddress("Gain" ,&tree_Gain ); - - - - for (unsigned int ientry = 0; ientry < t1->GetEntries(); ientry++) { - t1->GetEntry(ientry); - stModInfo* MOD = MODsColl[tree_DetId]; - MOD->Gain = tree_Gain; - } - - delete t1; - -} - - -int DeDxEstimatorProducer::getCharge(const SiStripCluster* Cluster, int& Saturating_Strips, - const uint32_t & DetId) -{ - //const vector& Ampls = Cluster->amplitudes(); - const vector& Ampls = Cluster->amplitudes(); - //uint32_t DetId = Cluster->geographicalId(); - -// float G=1.0f; - - int toReturn = 0; - Saturating_Strips = 0; - for(unsigned int i=0;iGain; - CalibratedCharge = (int)(CalibratedCharge / MOD->Gain ); - if(CalibratedCharge>=1024){ - CalibratedCharge = 255; - }else if(CalibratedCharge>=255){ - CalibratedCharge = 254; - } - } - - toReturn+=CalibratedCharge; - if(CalibratedCharge>=254)Saturating_Strips++; - } - -// printf("Charge = %i --> %i (Gain=%f)\n", accumulate(Ampls.begin(), Ampls.end(), 0), toReturn, G); - - - return toReturn; +void DeDxEstimatorProducer::processHit(const TrackingRecHit* recHit, float trackMomentum, float& cosine, reco::DeDxHitCollection& dedxHits, int& NClusterSaturating){ + auto const & thit = static_cast(*recHit); + if(!thit.isValid())return; + + auto const & clus = thit.firstClusterRef(); + if(!clus.isValid())return; + + if(clus.isPixel()){ + if(!usePixel) return; + + auto& detUnit = *(recHit->detUnit()); + float pathLen = detUnit.surface().bounds().thickness()/fabs(cosine); + float chargeAbs = clus.pixelCluster().charge(); + float charge = meVperADCPixel*chargeAbs/pathLen; + dedxHits.push_back( DeDxHit( charge, trackMomentum, pathLen, thit.geographicalId()) ); + }else if(clus.isStrip() && !thit.isMatched()){ + if(!useStrip) return; + + auto& detUnit = *(recHit->detUnit()); + int NSaturating = 0; + float pathLen = detUnit.surface().bounds().thickness()/fabs(cosine); + float chargeAbs = DeDxTools::getCharge(&(clus.stripCluster()),NSaturating, detUnit, calibGains, m_off); + float charge = meVperADCStrip*chargeAbs/pathLen; + if(!shapetest || (shapetest && DeDxTools::shapeSelection(clus.stripCluster().amplitudes()))){ + dedxHits.push_back( DeDxHit( charge, trackMomentum, pathLen, thit.geographicalId()) ); + if(NSaturating>0)NClusterSaturating++; + } + }else if(clus.isStrip() && thit.isMatched()){ + if(!useStrip) return; + const SiStripMatchedRecHit2D* matchedHit=dynamic_cast(recHit); + if(!matchedHit)return; + const GluedGeomDet* gdet = static_cast(matchedHit->det()); + + auto& detUnitM = *(gdet->monoDet()); + int NSaturating = 0; + float pathLen = detUnitM.surface().bounds().thickness()/fabs(cosine); + float chargeAbs = DeDxTools::getCharge(&(matchedHit->monoCluster()),NSaturating, detUnitM, calibGains, m_off); + float charge = meVperADCStrip*chargeAbs/pathLen; + if(!shapetest || (shapetest && DeDxTools::shapeSelection(matchedHit->monoCluster().amplitudes()))){ + dedxHits.push_back( DeDxHit( charge, trackMomentum, pathLen, matchedHit->monoId()) ); + if(NSaturating>0)NClusterSaturating++; + } + + auto& detUnitS = *(gdet->stereoDet()); + NSaturating = 0; + pathLen = detUnitS.surface().bounds().thickness()/fabs(cosine); + chargeAbs = DeDxTools::getCharge(&(matchedHit->stereoCluster()),NSaturating, detUnitS, calibGains, m_off); + charge = meVperADCStrip*chargeAbs/pathLen; + if(!shapetest || (shapetest && DeDxTools::shapeSelection(matchedHit->stereoCluster().amplitudes()))){ + dedxHits.push_back( DeDxHit( charge, trackMomentum, pathLen, matchedHit->stereoId()) ); + if(NSaturating>0)NClusterSaturating++; + } + } } - //define this as a plug-in DEFINE_FWK_MODULE(DeDxEstimatorProducer); diff --git a/RecoTracker/DeDx/plugins/DeDxEstimatorProducer.h b/RecoTracker/DeDx/plugins/DeDxEstimatorProducer.h index 462adff1afb10..f01550cdc940d 100644 --- a/RecoTracker/DeDx/plugins/DeDxEstimatorProducer.h +++ b/RecoTracker/DeDx/plugins/DeDxEstimatorProducer.h @@ -1,30 +1,43 @@ #ifndef TrackRecoDeDx_DeDxEstimatorProducer_H #define TrackRecoDeDx_DeDxEstimatorProducer_H // user include files + +#include + #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/stream/EDProducer.h" - #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/MakerMacros.h" - #include "FWCore/ParameterSet/interface/ParameterSet.h" - -#include "RecoTracker/DeDx/interface/BaseDeDxEstimator.h" -#include "RecoTracker/DeDx/interface/DeDxTools.h" +#include "FWCore/Framework/interface/ESHandle.h" #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" #include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h" #include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetUnit.h" +#include "Geometry/TrackerGeometryBuilder/interface/GluedGeomDet.h" -#include +#include "DataFormats/Common/interface/ValueMap.h" +#include "DataFormats/TrackReco/interface/DeDxData.h" +#include "DataFormats/TrackReco/interface/TrackDeDxHits.h" +#include "DataFormats/TrackReco/interface/DeDxHit.h" +#include "DataFormats/TrackReco/interface/Track.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHit.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" -#include "TFile.h" -#include "TChain.h" +#include "RecoTracker/DeDx/interface/BaseDeDxEstimator.h" +#include "RecoTracker/DeDx/interface/GenericAverageDeDxEstimator.h" +#include "RecoTracker/DeDx/interface/TruncatedAverageDeDxEstimator.h" +#include "RecoTracker/DeDx/interface/MedianDeDxEstimator.h" +#include "RecoTracker/DeDx/interface/UnbinnedFitDeDxEstimator.h" +#include "RecoTracker/DeDx/interface/ProductDeDxDiscriminator.h" +#include "RecoTracker/DeDx/interface/SmirnovDeDxDiscriminator.h" +#include "RecoTracker/DeDx/interface/ASmirnovDeDxDiscriminator.h" +#include "RecoTracker/DeDx/interface/BTagLikeDeDxDiscriminator.h" + + +#include "RecoTracker/DeDx/interface/DeDxTools.h" + +#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" +#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" // @@ -32,20 +45,17 @@ // class DeDxEstimatorProducer : public edm::stream::EDProducer<> { - public: - explicit DeDxEstimatorProducer(const edm::ParameterSet&); ~DeDxEstimatorProducer(); + static void fillDescriptions(edm::ConfigurationDescriptions & descriptions); private: virtual void beginRun(edm::Run const& run, const edm::EventSetup&) override; virtual void produce(edm::Event&, const edm::EventSetup&) override; - int getCharge(const SiStripCluster* Cluster, int& Saturating_Strips,const uint32_t &); -// int getCharge(const SiStripRecHit2D* sistripsimplehit, int& Saturating_Strips); - void MakeCalibrationMap(); - + void makeCalibrationMap(const TrackerGeometry& tkGeom); + void processHit(const TrackingRecHit * recHit, float trackMomentum, float& cosine, reco::DeDxHitCollection& dedxHits, int& NClusterSaturating); // ----------member data --------------------------- BaseDeDxEstimator* m_estimator; @@ -53,27 +63,20 @@ class DeDxEstimatorProducer : public edm::stream::EDProducer<> { edm::EDGetTokenT m_trajTrackAssociationTag; edm::EDGetTokenT m_tracksTag; + bool useTrajectory; bool usePixel; bool useStrip; - double MeVperADCPixel; - double MeVperADCStrip; + float meVperADCPixel; + float meVperADCStrip; unsigned int MaxNrStrips; - unsigned int MinTrackHits; std::string m_calibrationPath; bool useCalibration; bool shapetest; - private : - struct stModInfo{int DetId; float Thickness; float Distance; float Normalization; double Gain;}; - - class isEqual{ - public: - template bool operator () (const T& PseudoDetId1, const T& PseudoDetId2) { return PseudoDetId1==PseudoDetId2; } - }; - - __gnu_cxx::hash_map, isEqual > MODsColl; + std::vector< std::vector > calibGains; + unsigned int m_off; }; #endif diff --git a/RecoTracker/DeDx/plugins/DeDxEstimatorProducerPixelTripplet.cc b/RecoTracker/DeDx/plugins/DeDxEstimatorProducerPixelTripplet.cc deleted file mode 100644 index 619927928498e..0000000000000 --- a/RecoTracker/DeDx/plugins/DeDxEstimatorProducerPixelTripplet.cc +++ /dev/null @@ -1,227 +0,0 @@ -// -*- C++ -*- -// -// Package: DeDxEstimatorProducerPixelTripplet -// Class: DeDxEstimatorProducerPixelTripplet -// -/**\class DeDxEstimatorProducerPixelTripplet DeDxEstimatorProducerPixelTripplet.cc RecoTracker/DeDxEstimatorProducerPixelTripplet/src/DeDxEstimatorProducerPixelTripplet.cc - - Description: - - Implementation: - -*/ -// -// Original Author: loic Quertenmont (querten) -// Created: Fri Nov 19 14:09:02 CEST 2010 - - -// system include files -#include -#include "DataFormats/Common/interface/ValueMap.h" - -#include "RecoTracker/DeDx/plugins/DeDxEstimatorProducerPixelTripplet.h" -#include "DataFormats/TrackReco/interface/DeDxData.h" -#include "DataFormats/TrackReco/interface/TrackDeDxHits.h" -#include "DataFormats/TrackReco/interface/DeDxHit.h" -#include "DataFormats/TrackReco/interface/Track.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" - -#include "RecoTracker/DeDx/interface/GenericAverageDeDxEstimator.h" -#include "RecoTracker/DeDx/interface/TruncatedAverageDeDxEstimator.h" -#include "RecoTracker/DeDx/interface/MedianDeDxEstimator.h" -#include "RecoTracker/DeDx/interface/UnbinnedFitDeDxEstimator.h" - -#include "FWCore/Framework/interface/ESHandle.h" -#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" -#include "Geometry/Records/interface/TrackerDigiGeometryRecord.h" - -#include "DataFormats/TrackerRecHit2D/interface/ProjectedSiStripRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit1D.h" - - -using namespace reco; -using namespace std; -using namespace edm; - -DeDxEstimatorProducerPixelTripplet::DeDxEstimatorProducerPixelTripplet(const edm::ParameterSet& iConfig) -{ - - produces >(); - - - string estimatorName = iConfig.getParameter("estimator"); - if(estimatorName == "median") m_estimator = new MedianDeDxEstimator(-2.); - if(estimatorName == "generic") m_estimator = new GenericAverageDeDxEstimator (iConfig.getParameter("exponent")); - if(estimatorName == "truncated") m_estimator = new TruncatedAverageDeDxEstimator(iConfig.getParameter("fraction")); - if(estimatorName == "unbinnedFit") m_estimator = new UnbinnedFitDeDxEstimator(); - - MaxNrStrips = iConfig.getUntrackedParameter("maxNrStrips" , 255); - MinTrackHits = iConfig.getUntrackedParameter("MinTrackHits" , 4); - - m_tracksTag = consumes(iConfig.getParameter("tracks")); - m_trajTrackAssociationTag = consumes(iConfig.getParameter("trajectoryTrackAssociation")); - - usePixel = iConfig.getParameter("UsePixel"); - useStrip = iConfig.getParameter("UseStrip"); - MeVperADCPixel = iConfig.getParameter("MeVperADCPixel"); - MeVperADCStrip = iConfig.getParameter("MeVperADCStrip"); - - shapetest = iConfig.getParameter("ShapeTest"); - useCalibration = iConfig.getParameter("UseCalibration"); - m_calibrationPath = iConfig.getParameter("calibrationPath"); - - if(!usePixel && !useStrip) - edm::LogWarning("DeDxHitsProducer") << "Pixel Hits AND Strip Hits will not be used to estimate dEdx --> BUG, Please Update the config file"; -} - - -DeDxEstimatorProducerPixelTripplet::~DeDxEstimatorProducerPixelTripplet() -{ - delete m_estimator; -} - - - -// ------------ method called once each job just before starting event loop ------------ -void DeDxEstimatorProducerPixelTripplet::beginRun(edm::Run const& run, const edm::EventSetup& iSetup) -{ - if(MODsColl.size()!=0)return; - - - edm::ESHandle tkGeom; - iSetup.get().get( tkGeom ); - - auto const & Det = tkGeom->dets(); - for(unsigned int i=0;igeographicalId(); - - auto StripDetUnit = dynamic_cast (Det[i]); - auto PixelDetUnit = dynamic_cast (Det[i]); - - stModInfo* MOD = new stModInfo; - double Thick=-1, Dist=-1, Norma=-1; - if(StripDetUnit){ - Dist = StripDetUnit->position().mag(); - Thick = StripDetUnit->surface().bounds().thickness(); - Norma = MeVperADCStrip/Thick; - MOD->Normal = StripDetUnit->surface().normalVector(); - }else if(PixelDetUnit){ - Dist = PixelDetUnit->position().mag(); - Thick = PixelDetUnit->surface().bounds().thickness(); - Norma = MeVperADCPixel/Thick; - MOD->Normal = PixelDetUnit->surface().normalVector(); - } - - MOD->DetId = Detid.rawId(); - MOD->Thickness = Thick; - MOD->Distance = Dist; - MOD->Normalization = Norma; - MOD->Gain = 1; - MODsColl[MOD->DetId] = MOD; - } - - MakeCalibrationMap(); -} - -// ------------ method called once each job just after ending the event loop ------------ -void DeDxEstimatorProducerPixelTripplet::endJob(){ - MODsColl.clear(); -} - - - - -void DeDxEstimatorProducerPixelTripplet::produce(edm::Event& iEvent, const edm::EventSetup& iSetup) -{ - auto_ptr > trackDeDxEstimateAssociation(new ValueMap ); - ValueMap::Filler filler(*trackDeDxEstimateAssociation); - - Handle trackCollHandle; - iEvent.getByToken(m_trajTrackAssociationTag, trackCollHandle); - const TrackCollection trackColl = *trackCollHandle.product(); - - size_t n = trackColl.size(); - std::vector dedxEstimate(n); - - //assume trajectory collection size is equal to track collection size and that order is kept - for(unsigned int j=0;j hits; -// DeDxTools::trajectoryRawHits(traj, hits, usePixel, useStrip); - - - int NClusterSaturating = 0; - for(unsigned int h=0;hrecHitsSize();h++){ - //SiStripDetId detid = SiStripDetId((track->recHit(h))->geographicalId()); - //TrackingRecHit* recHit = (track->recHit(h))->clone(); - - TrackingRecHit* recHit= (track->recHit(h))->clone(); - - if(const SiPixelRecHit* pixelHit=dynamic_cast(recHit)){ - if(!usePixel) continue; - - unsigned int detid = pixelHit->geographicalId(); - stModInfo* MOD = MODsColl[detid]; - - double cosine = (track->px()*MOD->Normal.x()+track->py()*MOD->Normal.y()+track->pz()*MOD->Normal.z())/track->p(); - float pathLen = MOD->Thickness/std::abs(cosine); - float charge = MOD->Normalization*pixelHit->cluster()->charge()*std::abs(cosine); - dedxHits.push_back( DeDxHit( charge, MOD->Distance, pathLen, detid) ); - - } - delete recHit; - } - /////////////////////////////////////// - - - sort(dedxHits.begin(),dedxHits.end(),less()); - std::pair val_and_error = m_estimator->dedx(dedxHits); - - //WARNING: Since the dEdX Error is not properly computed for the moment - //It was decided to store the number of saturating cluster in that dataformat - val_and_error.second = NClusterSaturating; - - dedxEstimate[j] = DeDxData(val_and_error.first, val_and_error.second, dedxHits.size() ); - } - filler.insert(trackCollHandle, dedxEstimate.begin(), dedxEstimate.end()); - - // really fill the association map - filler.fill(); - // put into the event - iEvent.put(trackDeDxEstimateAssociation); -} - - - -void DeDxEstimatorProducerPixelTripplet::MakeCalibrationMap() -{ - if(!useCalibration)return; - - TChain* t1 = new TChain("SiStripCalib/APVGain"); - t1->Add(m_calibrationPath.c_str()); - - unsigned int tree_DetId; - unsigned char tree_APVId; - double tree_Gain; - - t1->SetBranchAddress("DetId" ,&tree_DetId ); - t1->SetBranchAddress("APVId" ,&tree_APVId ); - t1->SetBranchAddress("Gain" ,&tree_Gain ); - - - - for (unsigned int ientry = 0; ientry < t1->GetEntries(); ientry++) { - t1->GetEntry(ientry); - stModInfo* MOD = MODsColl[tree_DetId]; - MOD->Gain = tree_Gain; - } - - delete t1; - -} - - -//define this as a plug-in -DEFINE_FWK_MODULE(DeDxEstimatorProducerPixelTripplet); diff --git a/RecoTracker/DeDx/plugins/DeDxEstimatorProducerPixelTripplet.h b/RecoTracker/DeDx/plugins/DeDxEstimatorProducerPixelTripplet.h deleted file mode 100644 index 539e536c0f10f..0000000000000 --- a/RecoTracker/DeDx/plugins/DeDxEstimatorProducerPixelTripplet.h +++ /dev/null @@ -1,79 +0,0 @@ -#ifndef TrackRecoDeDx_DeDxEstimatorProducerPixelTripplet_H -#define TrackRecoDeDx_DeDxEstimatorProducerPixelTripplet_H -// user include files -#include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/EDProducer.h" - -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/MakerMacros.h" - -#include "FWCore/ParameterSet/interface/ParameterSet.h" - -#include "RecoTracker/DeDx/interface/BaseDeDxEstimator.h" -#include "RecoTracker/DeDx/interface/DeDxTools.h" - -#include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h" -#include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h" -#include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetUnit.h" -#include "TrackingTools/PatternTools/interface/TrajTrackAssociation.h" - -#include - -#include "DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2D.h" -#include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHit.h" - -#include "TFile.h" -#include "TChain.h" - - -// -// class declaration -// - -class DeDxEstimatorProducerPixelTripplet : public edm::EDProducer { - -public: - - explicit DeDxEstimatorProducerPixelTripplet(const edm::ParameterSet&); - ~DeDxEstimatorProducerPixelTripplet(); - -private: - virtual void beginRun(edm::Run const& run, const edm::EventSetup&) override; - virtual void produce(edm::Event&, const edm::EventSetup&) override; - virtual void endJob() ; - - void MakeCalibrationMap(); - - - // ----------member data --------------------------- - BaseDeDxEstimator* m_estimator; - - edm::EDGetTokenT m_trajTrackAssociationTag; - edm::EDGetTokenT m_tracksTag; - - bool usePixel; - bool useStrip; - double MeVperADCPixel; - double MeVperADCStrip; - - unsigned int MaxNrStrips; - unsigned int MinTrackHits; - - std::string m_calibrationPath; - bool useCalibration; - bool shapetest; - - private : - struct stModInfo{int DetId; float Thickness; float Distance; float Normalization; double Gain; GlobalVector Normal;}; - - class isEqual{ - public: - template bool operator () (const T& PseudoDetId1, const T& PseudoDetId2) { return PseudoDetId1==PseudoDetId2; } - }; - - __gnu_cxx::hash_map, isEqual > MODsColl; -}; - -#endif - diff --git a/RecoTracker/DeDx/python/dedxDiscriminator_Prod_cfi.py b/RecoTracker/DeDx/python/dedxDiscriminator_Prod_cfi.py deleted file mode 100644 index f471564a6b865..0000000000000 --- a/RecoTracker/DeDx/python/dedxDiscriminator_Prod_cfi.py +++ /dev/null @@ -1,20 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -dedxDiscrimProd = cms.EDProducer("DeDxDiscriminatorProducer", - tracks = cms.InputTag("generalTracks"), - trajectoryTrackAssociation = cms.InputTag("generalTracks"), - - Reccord = cms.untracked.string("SiStripDeDxMip_3D_Rcd"), - Formula = cms.untracked.uint32(0), - ProbabilityMode = cms.untracked.string("Accumulation"), - - UseStrip = cms.bool(True), - UsePixel = cms.bool(False), - MeVperADCStrip = cms.double(3.61e-06*265), - MeVperADCPixel = cms.double(3.61e-06), - - UseCalibration = cms.bool(False), - calibrationPath = cms.string(""), - ShapeTest = cms.bool(True), -) - diff --git a/RecoTracker/DeDx/python/dedxDiscriminatorsFromRefitter_cff.py b/RecoTracker/DeDx/python/dedxDiscriminatorsFromRefitter_cff.py deleted file mode 100644 index 05a8f691bbd38..0000000000000 --- a/RecoTracker/DeDx/python/dedxDiscriminatorsFromRefitter_cff.py +++ /dev/null @@ -1,23 +0,0 @@ -import FWCore.ParameterSet.Config as cms - - -from RecoTracker.TrackProducer.TrackRefitter_cfi import * -RefitterForDeDxDiscrim = TrackRefitter.clone() -RefitterForDeDxDiscrim.TrajectoryInEvent = True - -from RecoTracker.DeDx.dedxDiscriminators_cff import * -dedxDiscrimProdFromReffiter = dedxDiscrimProd.clone() -dedxDiscrimProdFromReffiter.tracks = cms.InputTag("RefitterForDeDxDiscrim") -dedxDiscrimProdFromReffiter.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDxDiscrim") - -dedxDiscrimBTagFromReffiter = dedxDiscrimProdFromReffiter.clone() -dedxDiscrimBTagFromReffiter.Formula = cms.untracked.uint32(1) - -dedxDiscrimSmiFromReffiter = dedxDiscrimProdFromReffiter.clone() -dedxDiscrimSmiFromReffiter.Formula = cms.untracked.uint32(2) - -dedxDiscrimASmiFromReffiter = dedxDiscrimProdFromReffiter.clone() -dedxDiscrimASmiFromReffiter.Formula = cms.untracked.uint32(3) - -doAlldEdXDiscriminatorsFromReffiter = cms.Sequence(dedxDiscrimProdFromReffiter * dedxDiscrimBTagFromReffiter * dedxDiscrimSmiFromReffiter * dedxDiscrimASmiFromReffiter) - diff --git a/RecoTracker/DeDx/python/dedxDiscriminators_cff.py b/RecoTracker/DeDx/python/dedxDiscriminators_cff.py deleted file mode 100644 index 3a3f0f0a7f544..0000000000000 --- a/RecoTracker/DeDx/python/dedxDiscriminators_cff.py +++ /dev/null @@ -1,15 +0,0 @@ -import FWCore.ParameterSet.Config as cms - - -from RecoTracker.DeDx.dedxDiscriminator_Prod_cfi import * - -dedxDiscrimBTag = dedxDiscrimProd.clone() -dedxDiscrimBTag.Formula = cms.untracked.uint32(1) - -dedxDiscrimSmi = dedxDiscrimProd.clone() -dedxDiscrimSmi.Formula = cms.untracked.uint32(2) - -dedxDiscrimASmi = dedxDiscrimProd.clone() -dedxDiscrimASmi.Formula = cms.untracked.uint32(3) - -doAlldEdXDiscriminators = cms.Sequence(dedxDiscrimProd * dedxDiscrimBTag * dedxDiscrimSmi * dedxDiscrimASmi) diff --git a/RecoTracker/DeDx/python/dedxEstimatorsFromRefitter_cff.py b/RecoTracker/DeDx/python/dedxEstimatorsFromRefitter_cff.py index 514a89581db94..4c93b42af9677 100644 --- a/RecoTracker/DeDx/python/dedxEstimatorsFromRefitter_cff.py +++ b/RecoTracker/DeDx/python/dedxEstimatorsFromRefitter_cff.py @@ -5,19 +5,32 @@ RefitterForDeDx = TrackRefitter.clone() RefitterForDeDx.TrajectoryInEvent = True + + from RecoTracker.DeDx.dedxEstimators_cff import * -dedxTruncated40.tracks=cms.InputTag("RefitterForDeDx") -dedxTruncated40.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") + dedxHarmonic2.tracks=cms.InputTag("RefitterForDeDx") dedxHarmonic2.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") + +dedxTruncated40.tracks=cms.InputTag("RefitterForDeDx") +dedxTruncated40.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") + dedxMedian.tracks=cms.InputTag("RefitterForDeDx") dedxMedian.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") + dedxUnbinned.tracks=cms.InputTag("RefitterForDeDx") dedxUnbinned.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") -doAlldEdXEstimators = cms.Sequence(RefitterForDeDx * (dedxTruncated40 + dedxMedian + dedxHarmonic2 + dedxUnbinned)) - +dedxDiscrimProd.tracks=cms.InputTag("RefitterForDeDx") +dedxDiscrimProd.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") +dedxDiscrimBTag.tracks=cms.InputTag("RefitterForDeDx") +dedxDiscrimBTag.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") +dedxDiscrimSmi.tracks=cms.InputTag("RefitterForDeDx") +dedxDiscrimSmi.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") +dedxDiscrimASmi.tracks=cms.InputTag("RefitterForDeDx") +dedxDiscrimASmi.trajectoryTrackAssociation = cms.InputTag("RefitterForDeDx") +doAlldEdXEstimators = cms.Sequence(RefitterForDeDx * (dedxTruncated40 + dedxHarmonic2 + dedxDiscrimASmi) ) diff --git a/RecoTracker/DeDx/python/dedxEstimators_Cosmics_cff.py b/RecoTracker/DeDx/python/dedxEstimators_Cosmics_cff.py index 4c152737fe4a6..7bc453fa8377c 100644 --- a/RecoTracker/DeDx/python/dedxEstimators_Cosmics_cff.py +++ b/RecoTracker/DeDx/python/dedxEstimators_Cosmics_cff.py @@ -1,9 +1,7 @@ import FWCore.ParameterSet.Config as cms -from RecoTracker.DeDx.dedxTruncated40_cfi import * -from RecoTracker.DeDx.dedxMedian_cfi import * -from RecoTracker.DeDx.dedxHarmonic2_cfi import * -from RecoTracker.DeDx.dedxDiscriminators_cff import * + +from RecoTracker.DeDx.dedxEstimators_cff import * dedxTruncated40CTF = dedxTruncated40.clone() dedxTruncated40CTF.tracks = cms.InputTag("ctfWithMaterialTracksP5") diff --git a/RecoTracker/DeDx/python/dedxEstimators_cff.py b/RecoTracker/DeDx/python/dedxEstimators_cff.py index 42272ffbbbc51..e2221886d7a0f 100644 --- a/RecoTracker/DeDx/python/dedxEstimators_cff.py +++ b/RecoTracker/DeDx/python/dedxEstimators_cff.py @@ -1,10 +1,46 @@ import FWCore.ParameterSet.Config as cms -from RecoTracker.DeDx.dedxTruncated40_cfi import * -from RecoTracker.DeDx.dedxMedian_cfi import * -from RecoTracker.DeDx.dedxHarmonic2_cfi import * -from RecoTracker.DeDx.dedxUnbinned_cfi import * -from RecoTracker.DeDx.dedxDiscriminators_cff import * +dedxHarmonic2 = cms.EDProducer("DeDxEstimatorProducer", + tracks = cms.InputTag("generalTracks"), + trajectoryTrackAssociation = cms.InputTag("generalTracks"), + + estimator = cms.string('generic'), + fraction = cms.double(0.4), #Used only if estimator='truncated' + exponent = cms.double(-2.0), #Used only if estimator='generic' + + UseStrip = cms.bool(True), + UsePixel = cms.bool(False), + UseTrajectory = cms.bool(True), + ShapeTest = cms.bool(True), + MeVperADCStrip = cms.double(3.61e-06*265), + MeVperADCPixel = cms.double(3.61e-06), -doAlldEdXEstimators = cms.Sequence(dedxTruncated40 + dedxHarmonic2 + dedxDiscrimASmi) + Reccord = cms.string("SiStripDeDxMip_3D_Rcd"), #used only for discriminators : estimators='productDiscrim' or 'btagDiscrim' or 'smirnovDiscrim' or 'asmirnovDiscrim' + ProbabilityMode = cms.string("Accumulation"), #used only for discriminators : estimators='productDiscrim' or 'btagDiscrim' or 'smirnovDiscrim' or 'asmirnovDiscrim' + + UseCalibration = cms.bool(False), + calibrationPath = cms.string(""), +) + +dedxTruncated40 = dedxHarmonic2.clone() +dedxTruncated40.estimator = cms.string('truncated') + +dedxMedian = dedxHarmonic2.clone() +dedxMedian.estimator = cms.string('median') + +dedxUnbinned = dedxHarmonic2.clone() +dedxUnbinned.estimator = cms.string('unbinnedFit') +dedxDiscrimProd = dedxHarmonic2.clone() +dedxDiscrimProd.estimator = cms.string('productDiscrim') + +dedxDiscrimBTag = dedxHarmonic2.clone() +dedxDiscrimBTag.estimator = cms.string('btagDiscrim') + +dedxDiscrimSmi = dedxHarmonic2.clone() +dedxDiscrimSmi.estimator = cms.string('smirnovDiscrim') + +dedxDiscrimASmi = dedxHarmonic2.clone() +dedxDiscrimASmi.estimator = cms.string('asmirnovDiscrim') + +doAlldEdXEstimators = cms.Sequence(dedxTruncated40 + dedxHarmonic2 + dedxDiscrimASmi) diff --git a/RecoTracker/DeDx/python/dedxHarmonic2_cfi.py b/RecoTracker/DeDx/python/dedxHarmonic2_cfi.py deleted file mode 100644 index e7a70985c2c96..0000000000000 --- a/RecoTracker/DeDx/python/dedxHarmonic2_cfi.py +++ /dev/null @@ -1,18 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -dedxHarmonic2 = cms.EDProducer("DeDxEstimatorProducer", - tracks = cms.InputTag("generalTracks"), - trajectoryTrackAssociation = cms.InputTag("generalTracks"), - - estimator = cms.string('generic'), - exponent = cms.double(-2.0), - - UseStrip = cms.bool(True), - UsePixel = cms.bool(False), - MeVperADCStrip = cms.double(3.61e-06*265), - MeVperADCPixel = cms.double(3.61e-06), - - UseCalibration = cms.bool(False), - calibrationPath = cms.string(""), - ShapeTest = cms.bool(True), -) diff --git a/RecoTracker/DeDx/python/dedxMedian_cfi.py b/RecoTracker/DeDx/python/dedxMedian_cfi.py deleted file mode 100644 index 4bf4dbc3e07e8..0000000000000 --- a/RecoTracker/DeDx/python/dedxMedian_cfi.py +++ /dev/null @@ -1,20 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -dedxMedian = cms.EDProducer("DeDxEstimatorProducer", - tracks = cms.InputTag("generalTracks"), - trajectoryTrackAssociation = cms.InputTag("generalTracks"), - - estimator = cms.string('median'), - - UseStrip = cms.bool(True), - UsePixel = cms.bool(False), - MeVperADCStrip = cms.double(3.61e-06*265), - MeVperADCPixel = cms.double(3.61e-06), - - UseCalibration = cms.bool(False), - calibrationPath = cms.string(""), - ShapeTest = cms.bool(False), -) - - - diff --git a/RecoTracker/DeDx/python/dedxTruncated40_cfi.py b/RecoTracker/DeDx/python/dedxTruncated40_cfi.py deleted file mode 100644 index 4c4d2ce27c865..0000000000000 --- a/RecoTracker/DeDx/python/dedxTruncated40_cfi.py +++ /dev/null @@ -1,20 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -dedxTruncated40 = cms.EDProducer("DeDxEstimatorProducer", - tracks = cms.InputTag("generalTracks"), - trajectoryTrackAssociation = cms.InputTag("generalTracks"), - - estimator = cms.string('truncated'), - fraction = cms.double(0.4), - - UseStrip = cms.bool(True), - UsePixel = cms.bool(False), - MeVperADCStrip = cms.double(3.61e-06*265), - MeVperADCPixel = cms.double(3.61e-06), - - UseCalibration = cms.bool(False), - calibrationPath = cms.string(""), - ShapeTest = cms.bool(True), -) - - diff --git a/RecoTracker/DeDx/python/dedxUnbinned_cfi.py b/RecoTracker/DeDx/python/dedxUnbinned_cfi.py deleted file mode 100644 index 8b9bad93633d4..0000000000000 --- a/RecoTracker/DeDx/python/dedxUnbinned_cfi.py +++ /dev/null @@ -1,20 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -dedxUnbinned = cms.EDProducer("DeDxEstimatorProducer", - tracks = cms.InputTag("generalTracks"), - trajectoryTrackAssociation = cms.InputTag("generalTracks"), - - estimator = cms.string('unbinnedFit'), - - UseStrip = cms.bool(True), - UsePixel = cms.bool(False), - MeVperADCStrip = cms.double(3.61e-06*265), - MeVperADCPixel = cms.double(3.61e-06), - - UseCalibration = cms.bool(False), - calibrationPath = cms.string(""), - ShapeTest = cms.bool(True), -) - - - diff --git a/RecoTracker/DeDx/python/hltDeDxEstimatorProducer_cfi.py b/RecoTracker/DeDx/python/hltDeDxEstimatorProducer_cfi.py index ac68842441970..1f9058a064bf8 100644 --- a/RecoTracker/DeDx/python/hltDeDxEstimatorProducer_cfi.py +++ b/RecoTracker/DeDx/python/hltDeDxEstimatorProducer_cfi.py @@ -1,18 +1,8 @@ import FWCore.ParameterSet.Config as cms -DeDxEstimatorProducer = cms.EDProducer("DeDxEstimatorProducer", - tracks = cms.InputTag("hltIter4Merged"), - trajectoryTrackAssociation = cms.InputTag("hltIter4Merged"), - estimator = cms.string('generic'), - exponent = cms.double(-2.0), +from RecoTracker.DeDx.dedxEstimators_cff import * - UseStrip = cms.bool(True), - UsePixel = cms.bool(False), - MeVperADCStrip = cms.double(3.61e-06*265), - MeVperADCPixel = cms.double(3.61e-06), - - UseCalibration = cms.bool(False), - calibrationPath = cms.string(""), - ShapeTest = cms.bool(False), -) +DeDxEstimatorProducer = dedxHarmonic2.clone() +DeDxEstimatorProducer.tracks=cms.InputTag("hltIter4Merged") +DeDxEstimatorProducer.trajectoryTrackAssociation = cms.InputTag("hltIter4Merged") diff --git a/RecoTracker/DeDx/src/DeDxDiscriminatorTools.cc b/RecoTracker/DeDx/src/DeDxDiscriminatorTools.cc deleted file mode 100644 index 56981eb86dbce..0000000000000 --- a/RecoTracker/DeDx/src/DeDxDiscriminatorTools.cc +++ /dev/null @@ -1,92 +0,0 @@ - -#include "RecoTracker/DeDx/interface/DeDxDiscriminatorTools.h" - -namespace DeDxDiscriminatorTools { - -using namespace std; - -bool IsSpanningOver2APV(unsigned int FirstStrip, unsigned int ClusterSize) -{ - if(FirstStrip==0 ) return true; - if(FirstStrip==128 ) return true; - if(FirstStrip==256 ) return true; - if(FirstStrip==384 ) return true; - if(FirstStrip==512 ) return true; - if(FirstStrip==640 ) return true; - - if(FirstStrip<=127 && FirstStrip+ClusterSize>127) return true; - if(FirstStrip<=255 && FirstStrip+ClusterSize>255) return true; - if(FirstStrip<=383 && FirstStrip+ClusterSize>383) return true; - if(FirstStrip<=511 && FirstStrip+ClusterSize>511) return true; - if(FirstStrip<=639 && FirstStrip+ClusterSize>639) return true; - - if(FirstStrip+ClusterSize==127 ) return true; - if(FirstStrip+ClusterSize==255 ) return true; - if(FirstStrip+ClusterSize==383 ) return true; - if(FirstStrip+ClusterSize==511 ) return true; - if(FirstStrip+ClusterSize==639 ) return true; - if(FirstStrip+ClusterSize==767 ) return true; - - return false; -} - - -bool IsSaturatingStrip(const vector& Ampls) -{ - for(unsigned int i=0;i=254)return true; - }return false; -} - - - -double charge(const vector& Ampls) -{ - double charge = 0; - for(unsigned int a=0;a(it)==0 && dynamic_cast(it)==0) { - std::cout << "this detID doesn't seem to belong to the Tracker" << std::endl; - return false; - } - - LocalPoint HitLocalPos = trajState.localPosition(); - LocalError HitLocalError = trajState.localError().positionError() ; - - const BoundPlane plane = it->surface(); - const TrapezoidalPlaneBounds* trapezoidalBounds( dynamic_cast(&(plane.bounds()))); - const RectangularPlaneBounds* rectangularBounds( dynamic_cast(&(plane.bounds()))); - - double DistFromBorder = 1.0; - //double HalfWidth = it->surface().bounds().width() /2.0; - double HalfLength = it->surface().bounds().length() /2.0; - - if(trapezoidalBounds) - { - std::array const & parameters = (*trapezoidalBounds).parameters(); - HalfLength = parameters[3]; - //double t = (HalfLength + HitLocalPos.y()) / (2*HalfLength) ; - //HalfWidth = parameters[0] + (parameters[1]-parameters[0]) * t; - }else if(rectangularBounds){ - //HalfWidth = it->surface().bounds().width() /2.0; - HalfLength = it->surface().bounds().length() /2.0; - }else{return false;} - -// if (fabs(HitLocalPos.x())+HitLocalError.xx() >= (HalfWidth - DistFromBorder) ) return false;//Don't think is really necessary - if (fabs(HitLocalPos.y())+HitLocalError.yy() >= (HalfLength - DistFromBorder) ) return false; - - return true; -} - -} diff --git a/RecoTracker/DeDx/src/DeDxTools.cc b/RecoTracker/DeDx/src/DeDxTools.cc index 8a6eab091fee0..567c0016a6215 100644 --- a/RecoTracker/DeDx/src/DeDxTools.cc +++ b/RecoTracker/DeDx/src/DeDxTools.cc @@ -6,129 +6,6 @@ namespace DeDxTools { using namespace std; using namespace reco; - - void trajectoryRawHits(const edm::Ref >& trajectory, vector& hits, bool usePixel, bool useStrip) - { - - // vector hits; - - const vector & measurements = trajectory->measurements(); - for(vector::const_iterator it = measurements.begin(); it!=measurements.end(); it++){ - - //FIXME: check that "updated" State is the best one (wrt state in the middle) - TrajectoryStateOnSurface trajState=it->updatedState(); - if( !trajState.isValid()) continue; - - const TrackingRecHit * recHit=(*it->recHit()).hit(); - - LocalVector trackDirection = trajState.localDirection(); - double cosine = trackDirection.z()/trackDirection.mag(); - - if(const SiStripMatchedRecHit2D* matchedHit=dynamic_cast(recHit)){ - if(!useStrip) continue; - - RawHits mono,stereo; - mono.trajectoryMeasurement = &(*it); - stereo.trajectoryMeasurement = &(*it); - mono.angleCosine = cosine; - stereo.angleCosine = cosine; - const std::vector & amplitudes = matchedHit->monoCluster().amplitudes(); - mono.charge = accumulate(amplitudes.begin(), amplitudes.end(), 0); - mono.NSaturating =0; - for(unsigned int i=0;i=254)mono.NSaturating++;} - - const std::vector & amplitudesSt = matchedHit->stereoCluster().amplitudes(); - stereo.charge = accumulate(amplitudesSt.begin(), amplitudesSt.end(), 0); - stereo.NSaturating =0; - for(unsigned int i=0;i=254)stereo.NSaturating++;} - - mono.detId= matchedHit->monoId(); - stereo.detId= matchedHit->stereoId(); - - hits.push_back(mono); - hits.push_back(stereo); - - }else if(const ProjectedSiStripRecHit2D* projectedHit=dynamic_cast(recHit)) { - if(!useStrip) continue; - - RawHits mono; - - mono.trajectoryMeasurement = &(*it); - - mono.angleCosine = cosine; - const std::vector & amplitudes = projectedHit->cluster()->amplitudes(); - mono.charge = accumulate(amplitudes.begin(), amplitudes.end(), 0); - mono.NSaturating =0; - for(unsigned int i=0;i=254)mono.NSaturating++;} - - mono.detId= projectedHit->originalId(); - hits.push_back(mono); - - }else if(const SiStripRecHit2D* singleHit=dynamic_cast(recHit)){ - if(!useStrip) continue; - - RawHits mono; - - mono.trajectoryMeasurement = &(*it); - - mono.angleCosine = cosine; - const std::vector & amplitudes = singleHit->cluster()->amplitudes(); - mono.charge = accumulate(amplitudes.begin(), amplitudes.end(), 0); - mono.NSaturating =0; - for(unsigned int i=0;i=254)mono.NSaturating++;} - - mono.detId= singleHit->geographicalId(); - hits.push_back(mono); - - }else if(const SiStripRecHit1D* single1DHit=dynamic_cast(recHit)){ - if(!useStrip) continue; - - RawHits mono; - - mono.trajectoryMeasurement = &(*it); - - mono.angleCosine = cosine; - const std::vector & amplitudes = single1DHit->cluster()->amplitudes(); - mono.charge = accumulate(amplitudes.begin(), amplitudes.end(), 0); - mono.NSaturating =0; - for(unsigned int i=0;i=254)mono.NSaturating++;} - - mono.detId= single1DHit->geographicalId(); - hits.push_back(mono); - - - }else if(const SiPixelRecHit* pixelHit=dynamic_cast(recHit)){ - if(!usePixel) continue; - - RawHits pixel; - - pixel.trajectoryMeasurement = &(*it); - - pixel.angleCosine = cosine; - pixel.charge = pixelHit->cluster()->charge(); - pixel.NSaturating=-1; - pixel.detId= pixelHit->geographicalId(); - hits.push_back(pixel); - } - - } - // return hits; - } - - - - -double genericAverage(const reco::DeDxHitCollection &hits, float expo ) -{ - double result=0; - size_t n = hits.size(); - for(size_t i = 0; i< n; i ++) - { - result+=pow(hits[i].charge(),expo); - } - return (n>0)?pow(result/n,1./expo):0.; -} - bool shapeSelection(const std::vector & ampls) { @@ -280,7 +157,183 @@ bool shapeSelection(const std::vector & ampls) +int getCharge(const SiStripCluster* cluster, int& nSatStrip, const GeomDetUnit& detUnit, const std::vector< std::vector< float > >& calibGains, const unsigned int& m_off ) +{ + const vector& Ampls = cluster->amplitudes(); + + nSatStrip = 0; + int charge = 0; + for(unsigned int i=0;ifirstStrip()+i)/128] ); + if(calibratedCharge>=1024){ + calibratedCharge = 255; + }else if(calibratedCharge>=255){ + calibratedCharge = 254; + } + } + + charge+=calibratedCharge; + if(calibratedCharge>=254)nSatStrip++; + } + + return charge; +} +void makeCalibrationMap(const std::string& m_calibrationPath, const TrackerGeometry& tkGeom, std::vector< std::vector< float > >& calibGains, const unsigned int& m_off) +{ + auto const & dus = tkGeom.detUnits(); + calibGains.resize(dus.size()-m_off); + + TChain* t1 = new TChain("SiStripCalib/APVGain"); + t1->Add(m_calibrationPath.c_str()); + + unsigned int tree_DetId; + unsigned char tree_APVId; + double tree_Gain; + t1->SetBranchAddress("DetId" ,&tree_DetId ); + t1->SetBranchAddress("APVId" ,&tree_APVId ); + t1->SetBranchAddress("Gain" ,&tree_Gain ); + + for (unsigned int ientry = 0; ientry < t1->GetEntries(); ientry++) { + t1->GetEntry(ientry); + auto& gains = calibGains[tkGeom.idToDetUnit(DetId(tree_DetId))->index()-m_off]; + if(gains.size()<(size_t)(tree_APVId+1)){gains.resize(tree_APVId+1);} + gains[tree_APVId] = tree_Gain; + } + t1->Delete(); +} + +void buildDiscrimMap(edm::Run const& run, const edm::EventSetup& iSetup, std::string Reccord, std::string ProbabilityMode, TH3F*& Prob_ChargePath) +{ + edm::ESHandle deDxMapHandle; + if( strcmp(Reccord.c_str(),"SiStripDeDxMip_3D_Rcd")==0){ + iSetup.get() .get(deDxMapHandle); + }else if(strcmp(Reccord.c_str(),"SiStripDeDxPion_3D_Rcd")==0){ + iSetup.get().get(deDxMapHandle); + }else if(strcmp(Reccord.c_str(),"SiStripDeDxKaon_3D_Rcd")==0){ + iSetup.get().get(deDxMapHandle); + }else if(strcmp(Reccord.c_str(),"SiStripDeDxProton_3D_Rcd")==0){ + iSetup.get().get(deDxMapHandle); + }else if(strcmp(Reccord.c_str(),"SiStripDeDxElectron_3D_Rcd")==0){ + iSetup.get().get(deDxMapHandle); + }else{ + throw cms::Exception("WrongReccord for dEdx") << "The reccord : " << Reccord << "is unknown\n"; + } + + float xmin = deDxMapHandle->rangeX().min; + float xmax = deDxMapHandle->rangeX().max; + float ymin = deDxMapHandle->rangeY().min; + float ymax = deDxMapHandle->rangeY().max; + float zmin = deDxMapHandle->rangeZ().min; + float zmax = deDxMapHandle->rangeZ().max; + + if(Prob_ChargePath)delete Prob_ChargePath; + Prob_ChargePath = new TH3F ("Prob_ChargePath" , "Prob_ChargePath" , deDxMapHandle->numberOfBinsX(), xmin, xmax, deDxMapHandle->numberOfBinsY() , ymin, ymax, deDxMapHandle->numberOfBinsZ(), zmin, zmax); + + if(strcmp(ProbabilityMode.c_str(),"Accumulation")==0){ + for(int i=0;i<=Prob_ChargePath->GetXaxis()->GetNbins()+1;i++){ + for(int j=0;j<=Prob_ChargePath->GetYaxis()->GetNbins()+1;j++){ + float Ni = 0; + for(int k=0;k<=Prob_ChargePath->GetZaxis()->GetNbins()+1;k++){ Ni+=deDxMapHandle->binContent(i,j,k);} + for(int k=0;k<=Prob_ChargePath->GetZaxis()->GetNbins()+1;k++){ + float tmp = 0; + for(int l=0;l<=k;l++){ tmp+=deDxMapHandle->binContent(i,j,l);} + if(Ni>0){ + Prob_ChargePath->SetBinContent (i, j, k, tmp/Ni); + }else{ + Prob_ChargePath->SetBinContent (i, j, k, 0); + } + } + } + } + }else if(strcmp(ProbabilityMode.c_str(),"Integral")==0){ + for(int i=0;i<=Prob_ChargePath->GetXaxis()->GetNbins()+1;i++){ + for(int j=0;j<=Prob_ChargePath->GetYaxis()->GetNbins()+1;j++){ + float Ni = 0; + for(int k=0;k<=Prob_ChargePath->GetZaxis()->GetNbins()+1;k++){ Ni+=deDxMapHandle->binContent(i,j,k);} + for(int k=0;k<=Prob_ChargePath->GetZaxis()->GetNbins()+1;k++){ + float tmp = deDxMapHandle->binContent(i,j,k); + if(Ni>0){ + Prob_ChargePath->SetBinContent (i, j, k, tmp/Ni); + }else{ + Prob_ChargePath->SetBinContent (i, j, k, 0); + } + } + } + } + }else{ + throw cms::Exception("WrongConfig for dEdx") << "The ProbabilityMode: " << ProbabilityMode << "is unknown\n"; + } } + + + +bool IsSpanningOver2APV(unsigned int FirstStrip, unsigned int ClusterSize) +{ + if(FirstStrip==0 ) return true; + if(FirstStrip==128 ) return true; + if(FirstStrip==256 ) return true; + if(FirstStrip==384 ) return true; + if(FirstStrip==512 ) return true; + if(FirstStrip==640 ) return true; + + if(FirstStrip<=127 && FirstStrip+ClusterSize>127) return true; + if(FirstStrip<=255 && FirstStrip+ClusterSize>255) return true; + if(FirstStrip<=383 && FirstStrip+ClusterSize>383) return true; + if(FirstStrip<=511 && FirstStrip+ClusterSize>511) return true; + if(FirstStrip<=639 && FirstStrip+ClusterSize>639) return true; + + if(FirstStrip+ClusterSize==127 ) return true; + if(FirstStrip+ClusterSize==255 ) return true; + if(FirstStrip+ClusterSize==383 ) return true; + if(FirstStrip+ClusterSize==511 ) return true; + if(FirstStrip+ClusterSize==639 ) return true; + if(FirstStrip+ClusterSize==767 ) return true; + + return false; +} + +bool IsFarFromBorder(const TrajectoryStateOnSurface& trajState, const GeomDetUnit* it) +{ + if (dynamic_cast(it)==0 && dynamic_cast(it)==0) { + edm::LogInfo("DeDxTools::IsFarFromBorder") << "this detID doesn't seem to belong to the Tracker" << std::endl; + return false; + } + + LocalPoint HitLocalPos = trajState.localPosition(); + LocalError HitLocalError = trajState.localError().positionError() ; + + const BoundPlane plane = it->surface(); + const TrapezoidalPlaneBounds* trapezoidalBounds( dynamic_cast(&(plane.bounds()))); + const RectangularPlaneBounds* rectangularBounds( dynamic_cast(&(plane.bounds()))); + + double DistFromBorder = 1.0; + //double HalfWidth = it->surface().bounds().width() /2.0; + double HalfLength = it->surface().bounds().length() /2.0; + + if(trapezoidalBounds) + { + std::array const & parameters = (*trapezoidalBounds).parameters(); + HalfLength = parameters[3]; + //double t = (HalfLength + HitLocalPos.y()) / (2*HalfLength) ; + //HalfWidth = parameters[0] + (parameters[1]-parameters[0]) * t; + }else if(rectangularBounds){ + //HalfWidth = it->surface().bounds().width() /2.0; + HalfLength = it->surface().bounds().length() /2.0; + }else{return false;} + +// if (fabs(HitLocalPos.x())+HitLocalError.xx() >= (HalfWidth - DistFromBorder) ) return false;//Don't think is really necessary + if (fabs(HitLocalPos.y())+HitLocalError.yy() >= (HalfLength - DistFromBorder) ) return false; + + return true; +} + + +}//END of DEDXTOOLS + diff --git a/RecoTracker/DeDx/test/DeDxDisciminatorLearnerFromCalibTree_cfg.py b/RecoTracker/DeDx/test/DeDxDisciminatorLearnerFromCalibTree_cfg.py deleted file mode 100644 index b4d44cb46dc6e..0000000000000 --- a/RecoTracker/DeDx/test/DeDxDisciminatorLearnerFromCalibTree_cfg.py +++ /dev/null @@ -1,146 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -process = cms.Process("DEDX") - -process.MessageLogger = cms.Service("MessageLogger", - cout = cms.untracked.PSet( threshold = cms.untracked.string('ERROR') ), - destinations = cms.untracked.vstring('cout') -) - - -process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") -process.GlobalTag.globaltag = 'GR09_R_35X_V2::All' - -process.load('Configuration.StandardSequences.MagneticField_AutoFromDBCurrent_cff') -process.load('Configuration/StandardSequences/GeometryExtended_cff') - - -process.source = cms.Source("EmptyIOVSource", - timetype = cms.string('runnumber'), - interval = cms.uint64(1), - firstValue = cms.uint64(132440), - lastValue = cms.uint64(132440) -) - - -process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(1) -) - - -process.dedxDiscrimMAP = cms.EDAnalyzer("DeDxDiscriminatorLearnerFromCalibTree", - AlgoMode = cms.untracked.string("WriteOnDB"), - HistoFile = cms.untracked.string("ProbaMap.root"), - - MaxNrStrips = cms.untracked.uint32(255), - - P_Min = cms.double (10.0 ), - P_Max = cms.double (9999.0), - P_NBins = cms.int32 (1 ), - Path_Min = cms.double (0.2 ), - Path_Max = cms.double (1.6 ), - Path_NBins = cms.int32 (28 ), - Charge_Min = cms.double (0 ), - Charge_Max = cms.double (4000), - Charge_NBins = cms.int32 (400 ), - - SinceAppendMode = cms.bool(True), - IOVMode = cms.string('Job'), - Record = cms.string('SiStripDeDxMip_3D_Rcd'), - doStoreOnDB = cms.bool(True), - - - UseCalibration = cms.untracked.bool(True), - calibrationPath = cms.untracked.string("Gains.root"), - InputFiles = cms.vstring( - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_16_140058_1.root', #Size=859Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_17_140059_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_43_140124_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_45_140126_1.root', #Size=1781Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_59_140158_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_60_140159_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_1_140160_1.root', #Size=1064Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_24_140331_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_30_140352_1.root', #Size=1691Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_32_140361_1.root', #Size=808Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_33_140362_1.root', #Size=1392Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_42_140379_1.root', #Size=1115Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_52_140382_1.root', #Size=1786Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_46_140383_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_47_140385_1.root', #Size=1172Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_49_140387_1.root', #Size=828Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_50_140388_1.root', #Size=680Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_56_140399_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_57_140401_1.root', #Size=1596Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_20_141874_1.root', #Size=615Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_21_141876_1.root', #Size=542Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_24_141880_1.root', #Size=1149Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_25_141881_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_26_141882_1.root', #Size=1332Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_42_142187_1.root', #Size=1616Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_44_142189_1.root', #Size=650Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_45_142191_1.root', #Size=586Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_67_142265_1.root', #Size=604Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_75_142305_1.root', #Size=873Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_78_142311_1.root', #Size=1687Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_79_142312_1.root', #Size=781Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_5_142414_1.root', #Size=591Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_9_142419_1.root', #Size=611Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_10_142420_1.root', #Size=587Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_11_142422_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_25_142524_1.root', #Size=1140Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_26_142525_1.root', #Size=519Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_27_142528_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_33_142558_1.root', #Size=882Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_47_142662_1.root', #Size=756Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_48_142663_1.root', #Size=640Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_6_142928_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_8_142933_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_3_142953_1.root', #Size=1132Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_4_142954_1.root', #Size=985Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_12_142970_1.root', #Size=686Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_13_142971_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_15_143005_1.root', #Size=977Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_17_143007_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_24_143181_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_25_143187_1.root', #Size=810Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_11_143320_1.root', #Size=564Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_37_143322_1.root', #Size=588Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_14_143323_1.root', #Size=1603Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_41_143326_1.root', #Size=612Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_43_143328_1.root', #Size=825Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_16_143657_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_50_143727_1.root', #Size=1450Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_30_143827_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_2_143833_1.root', #Size=1791Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_28_143953_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_29_143954_1.root', #Size=832Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_56_143957_1.root', #Size=594Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_36_143961_1.root', #Size=1117Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_13_143962_1.root', #Size=1182Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_8_144011_1.root', #Size=1888Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_18_144086_1.root', #Size=1345Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_12_144089_1.root', #Size=2047Mo - 'rfio:/castor/cern.ch/cms/store/group/tracker/strip/calibration/calibrationtree/calibTree_51_144112_1.root', #Size=2047Mo - - ) -) - -process.PoolDBOutputService = cms.Service("PoolDBOutputService", - BlobStreamerName = cms.untracked.string('TBufferBlobStreamingService'), - DBParameters = cms.PSet( - messageLevel = cms.untracked.int32(2), - authenticationPath = cms.untracked.string('/afs/cern.ch/cms/DB/conddb') - ), - timetype = cms.untracked.string('runnumber'), - connect = cms.string('sqlite_file:Data7TeV_Deco_SiStripDeDxMip_3D_Rcd.db'), - toPut = cms.VPSet(cms.PSet( - record = cms.string('SiStripDeDxMip_3D_Rcd'), - tag = cms.string('Data7TeV_Deco_3D_Rcd_38X') - )) -) - -process.p = cms.Path(process.dedxDiscrimMAP) - - - diff --git a/RecoTracker/DeDx/test/DeDxFromRaw_Cosmics_cfg.py b/RecoTracker/DeDx/test/DeDxFromRaw_Cosmics_cfg.py deleted file mode 100644 index a3f1495baa8f7..0000000000000 --- a/RecoTracker/DeDx/test/DeDxFromRaw_Cosmics_cfg.py +++ /dev/null @@ -1,218 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -process = cms.Process("DEDX") - -process.load("FWCore.MessageLogger.MessageLogger_cfi") - -process.source = cms.Source("PoolSource", - skipEvents = cms.untracked.uint32(25000), - fileNames = cms.untracked.vstring( -### Run 60302 -# '/store/data/Commissioning08/Cosmics/RECO/EW35_3T_v1/000/060/302/2E653B32-1277-DD11-A8F2-0030487A3232.root', #Run60302 -# '/store/data/Commissioning08/Cosmics/RECO/EW35_3T_v1/000/060/302/749B859D-2C76-DD11-9837-001D09F24498.root', #Run60302 -# '/store/data/Commissioning08/Cosmics/RECO/EW35_3T_v1/000/060/302/8E5B9DA9-2E76-DD11-90BB-0019B9F70607.root' #Run60302 -### Run 62966 - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/02859E73-7684-DD11-B423-000423D6C8E6.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0288ECB3-7684-DD11-AC06-001617C3B5F4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/02940ECF-7884-DD11-9BDE-001617C3B6E8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/04289E48-6684-DD11-BE00-000423D986C4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/04D43F2D-6B84-DD11-9837-000423D944F0.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0663FAC9-7384-DD11-952C-000423D94700.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0820A8E6-6C84-DD11-84D0-001617C3B76A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/08C0E279-7284-DD11-AA7C-000423D98E30.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0AA89A75-6684-DD11-A105-000423D944FC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0ABD64CB-6884-DD11-ABC3-000423D94494.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0CF5ADF2-6384-DD11-B577-0019DB29C5FC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/10F5D3F3-7484-DD11-AF5B-001617DBD556.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/10FE209C-7184-DD11-8C0A-001617E30CA4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/1AD58EFC-7B84-DD11-8031-0019DB29C614.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/1CAA6E09-6884-DD11-88B6-000423D8F63C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/1CD824A6-7384-DD11-847E-000423D98DB4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/1EF05A16-6D84-DD11-BF2B-000423D9A212.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/22984393-7984-DD11-8EB5-001617E30F48.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/22CF4EA0-7584-DD11-A511-000423D6B42C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/287F6730-6C84-DD11-8982-001617DBD288.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/28E6C767-6384-DD11-BABA-001617C3B79A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/2A24FA10-6B84-DD11-B643-000423D98844.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/2E873AB4-7084-DD11-9EA9-001617E30CE8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/2EB44549-7184-DD11-AB85-000423D99896.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/3627FA38-7084-DD11-A9D7-001617C3B6E2.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/36BD3A57-6784-DD11-97DA-000423D6B358.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/36DF4B2D-7284-DD11-AC06-000423D98F98.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/384AEF4B-6684-DD11-9508-001617E30CC8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/3AFE9B0D-6F84-DD11-AEAC-000423D98DC4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/403A347A-7D84-DD11-ADD2-0016177CA778.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/40F103F8-6484-DD11-8B5C-000423D6A6F4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/4201A618-6384-DD11-BCE9-001617E30E28.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/423C700A-6C84-DD11-A8D8-001617C3B70E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/4292E820-6E84-DD11-B597-001617E30D40.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/462E1067-6F84-DD11-A09C-000423D94A04.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/4CE876CB-6B84-DD11-A81D-000423D94A20.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/4E06B006-6E84-DD11-A316-000423D98AF0.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/505B4F5C-7784-DD11-AEC4-000423D6CAF2.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/522104D1-6284-DD11-8234-001617E30D4A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/52DCC530-7284-DD11-B976-001617DC1F70.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/56FCC408-6884-DD11-B4C9-000423D99AAA.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/58F3AE50-7984-DD11-9BE9-001617DBD332.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/5A4E353B-7484-DD11-B710-000423D9970C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/5C36036C-7C84-DD11-844B-001617E30F58.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/603F65C6-6284-DD11-BAFE-001617E30D38.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/607C1852-7384-DD11-8C8B-000423D99394.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/60CF9E27-7484-DD11-9925-001617C3B710.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/624761B5-6884-DD11-B098-001617E30CA4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/62C9526C-7084-DD11-B0E6-000423D33970.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/64ADDAE1-6E84-DD11-ACD4-000423D9517C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/660C8760-7E84-DD11-8103-000423D6B5C4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/662E2DA7-6584-DD11-9FE3-000423D99660.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/666EF690-7C84-DD11-B989-000423D98B28.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/66FE013E-7F84-DD11-B031-001617C3B706.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/6A08BE67-6884-DD11-822F-001617DBCF6A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/6E8650B8-6784-DD11-8150-000423D992DC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/72AF5CFD-7084-DD11-953E-000423D987FC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/766F94F0-7784-DD11-908C-001617C3B6FE.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/76FD0515-6384-DD11-8CF8-000423D98F98.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7A19155C-7E84-DD11-8BD9-001617C3B73A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7A422BEE-6B84-DD11-99B7-000423D985B0.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7AD3DCB4-6784-DD11-AB00-000423D996C8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7AEC3D06-6F84-DD11-AFD5-000423D94AA8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7E1850C7-6184-DD11-B1C5-001617DBD224.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7E87EC73-7C84-DD11-BD26-000423D99160.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/807F4531-7B84-DD11-955C-001617DBD230.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/80BF05A3-7784-DD11-A449-001617E30F4C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/8A1BD799-6784-DD11-ACEB-000423D99E46.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/8E90405D-6C84-DD11-91AF-000423D98B6C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/92D2C0A5-6284-DD11-B7A3-001617E30D38.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/94C98133-6B84-DD11-A822-000423D99AA2.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9648156E-7184-DD11-B65C-000423D98C20.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/968FF9AD-6A84-DD11-B9B3-001617C3B6CC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/98183930-6484-DD11-A45B-000423D98800.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9873FAA3-6584-DD11-A84A-000423D94524.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9A5609A3-7784-DD11-B640-0019DB29C620.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9ACFB350-7984-DD11-9F38-001617C3B6C6.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9C4EDAD4-7084-DD11-96F2-000423D9989E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9EB8414E-7484-DD11-BD55-001617C3B6DE.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/A286EC4D-7A84-DD11-897C-001617C3B778.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/A6DA38D1-7084-DD11-8DF5-000423D99F3E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/A8D11CFC-6D84-DD11-8F48-000423D98E54.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/AAA3D426-6784-DD11-86DF-001617C3B65A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/AEA9935C-6884-DD11-B724-000423D9870C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B00CD9EF-6184-DD11-BE6D-001617E30E2C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B00D7F3C-7884-DD11-8CB8-001617DBD5AC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B26E6DAC-7584-DD11-91F9-001617C3B78C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B48AA648-7384-DD11-A280-001617C3B76E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B4EC2E1D-6984-DD11-9C9D-000423D174FE.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/BC8E7772-6C84-DD11-9423-00161757BF42.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/BEA27E68-6D84-DD11-B8EA-000423D94908.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C090E88C-6784-DD11-ACE2-001617E30D00.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C099710B-7584-DD11-BD5F-000423D992A4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C0D12197-7484-DD11-A39B-001617C3B69C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C4DA3B49-7384-DD11-BAF5-000423D94AA8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C6FE498B-7584-DD11-BE9A-001617DBCF90.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/CA421835-7484-DD11-850E-000423D9863C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/CABC564A-7984-DD11-AF7E-001617E30F56.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/CC869C73-6684-DD11-AE92-000423D98BC4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/CE5EA015-7884-DD11-AADA-001617C3B64C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/D0EA5EFC-7B84-DD11-A9F3-001617E30D12.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/D2998715-7A84-DD11-8E6B-000423D6CA6E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/D2F5DA95-6D84-DD11-ADCF-000423D985E4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/DAEF6241-6A84-DD11-BFA2-000423D98A44.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/DC0954EC-6B84-DD11-A06D-000423D99B3E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/DC2E9F92-7384-DD11-B26C-000423D99F3E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/DEF25FD6-7684-DD11-8A37-0019DB2F3F9B.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E03C73FE-7B84-DD11-835A-001617E30CD4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E2ED7F85-6284-DD11-8302-001617C3B6CE.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E458657A-8484-DD11-A767-001617C3B654.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E48A7833-7284-DD11-9D81-000423D99F1E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E67C4A89-6584-DD11-9E87-000423DD2F34.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E8A554C9-7784-DD11-93C0-001617DF785A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/EAABFC82-7284-DD11-A1FC-000423D98634.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/EE7CEAC6-6B84-DD11-B551-000423D98E6C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F236442D-7A84-DD11-A0A3-000423D98750.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F416F436-7084-DD11-A961-001617DBD316.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F4273102-7A84-DD11-999E-001617C3B5E4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F60A7FDB-6D84-DD11-A5C8-001617E30F50.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F8D547BE-6884-DD11-822B-000423D95030.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/FA34CEA6-6184-DD11-B69B-001617E30D06.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/FCC6D647-6A84-DD11-95D8-000423D98EC8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/FCD1FD91-6684-DD11-8FA8-000423D9A2AE.root' - ) -) - -process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(300) -) - - -# Conditions (Global Tag is used here): -process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") -process.GlobalTag.connect = "frontier://PromptProd/CMS_COND_21X_GLOBALTAG" -process.GlobalTag.globaltag = "CRUZET4_V4P::All" -process.prefer("GlobalTag") - -# Magnetic field -process.load("Configuration.StandardSequences.MagneticField_38T_cff") - - -#process.load("TrackingTools.TrackRefitter.TracksToTrajectories_cff") - -process.load("Geometry.CMSCommonData.cmsIdealGeometryXML_cfi") -process.load("Geometry.TrackerGeometryBuilder.trackerGeometry_cfi") -process.load("Geometry.TrackerNumberingBuilder.trackerNumberingGeometry_cfi") -process.load("Geometry.CommonDetUnit.globalTrackingGeometry_cfi") - -process.filterOnTracks = cms.EDFilter("TrackCountFilter", -# src = cms.InputTag('ctfWithMaterialTracksP5'), - src = cms.InputTag('globalCosmicMuons'), - minNumber = cms.uint32(1) -) - -#import RecoTracker.TrackProducer.TrackRefitter_cff -#process.CTFRefit = RecoTracker.TrackProducer.RefitterWithMaterial_cfi.TrackRefitter.clone() -#process.CTFRefit.src = 'ctfWithMaterialTracksP5' - -#process.load("RecoTracker.TrackProducer.TrackRefitter_cff") -#process.TrackRefitter.src = 'ctfWithMaterialTracksP5' -#process.TrackRefitter.TrajectoryInEvent = True - - -#process.load("RecoTracker.TransientTrackingRecHit.TransientTrackingRecHitBuilderWithoutRefit_cfi") - -process.load("RecoLocalTracker.SiPixelRecHits.PixelCPEESProducers_cff") -process.globalMuons = cms.EDProducer("TracksToTrajectories", - Tracks = cms.InputTag("globalCosmicMuons"), - TrackTransformer = cms.PSet( - Fitter = cms.string('KFFitterForRefitInsideOut'), - TrackerRecHitBuilder = cms.string('WithTrackAngle'), - Smoother = cms.string('KFSmootherForRefitInsideOut'), - MuonRecHitBuilder = cms.string('MuonRecHitBuilder'), - RefitDirection = cms.string('insideOut'), - RefitRPCHits = cms.bool(True), - Propagator = cms.string('SmartPropagatorAnyRK') - ) -) - -#process.load("Analysis.DiscriminationPower.dedxDiscriminationPower_cff") - -process.load("RecoTracker.DeDx.dedxEstimators_Cosmics_cff") -process.load("Configuration.StandardSequences.ReconstructionCosmics_cff") -#process.load("RecoTracker.DeDx.dedxEstimatorsFromRefitter_Cosmics_cff") - -# OUT -process.TFileService = cms.Service("TFileService", fileName = cms.string('histo.root') ) - -process.OUT = cms.OutputModule("PoolOutputModule", - fileName = cms.untracked.string('/tmp/gbruno/out.root'), - outputCommands = cms.untracked.vstring( - 'keep *' -# 'drop *', -# 'keep *_dedxHarmonic2_*_*' ,'keep *_dedxMedian_*_*', 'keep *_dedxTruncated40_*_*', -# 'keep recoTracks_*_*_*' - ) -) - -#process.p = cms.Path(process.filterOnTracks * process.TrackRefitter + process.dedxDiscrimPower) - -#process.p = cms.Path(process.filterOnTracks * process.TrackRefitter * process.doAlldEdXEstimators) -process.p = cms.Path(process.filterOnTracks * process.reconstructionCosmics * process.doAlldEdXEstimators) -process.outpath = cms.EndPath(process.OUT) -process.schedule = cms.Schedule(process.p, process.outpath) diff --git a/RecoTracker/DeDx/test/DeDxFromRaw_MCCollisions_cfg.py b/RecoTracker/DeDx/test/DeDxFromRaw_MCCollisions_cfg.py deleted file mode 100644 index 14b37a5450004..0000000000000 --- a/RecoTracker/DeDx/test/DeDxFromRaw_MCCollisions_cfg.py +++ /dev/null @@ -1,76 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -process = cms.Process("RP") -process.load("Configuration.StandardSequences.Services_cff") - -process.load("Configuration.StandardSequences.GeometryPilot2_cff") - -process.load("Configuration.StandardSequences.MagneticField_38T_cff") - -process.load("FWCore.MessageService.MessageLogger_cfi") - -process.load("Configuration.StandardSequences.RawToDigi_cff") - -#process.load("Configuration.StandardSequences.Digi_cff") - -process.load("Configuration.StandardSequences.Reconstruction_cff") - -process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") - -process.load("Configuration.EventContent.EventContent_cff") - - -process.load("RecoTracker.DeDx.dedxEstimators_cff") -#process.load("RecoTracker.DeDx.dedxDiscriminators_cff") - - - -process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(10) -) -process.source = cms.Source("PoolSource", - catalog = cms.untracked.string('PoolFileCatalog.xml'), - fileNames = cms.untracked.vstring('/store/relval/CMSSW_2_1_7/RelValMinBias/GEN-SIM-DIGI-RAW-HLTDEBUG/STARTUP_V7_v1/0001/0488E703-C27D-DD11-9F5E-001617C3B710.root') -# fileNames = cms.untracked.vstring('/store/relval/2008/6/20/RelVal-RelValTTbar-1213920853/0000/028CEBF9-A53E-DD11-BF35-00161757BF42.root') - -) - -process.Timing = cms.Service("Timing") -process.SimpleMemoryCheck = cms.Service("SimpleMemoryCheck", ignoreTotal = cms.untracked.int32(1) ) -#process.ProfilerService = cms.Service("SimpleMemoryCheck", firstEvent = cms.untracked.int32(2), lastEvent = cms.untracked.int32(10), paths = cms.untracked.vstring('p1') ) - - -#RECO content - -process.RECOAndDeDxEventContent = cms.PSet( - outputCommands = cms.untracked.vstring('drop *') -) - - - -process.DeDxEventContent = cms.PSet( - outputCommands = cms.untracked.vstring( - 'keep *_dedxHarmonic2_*_*' ,'keep *_dedxMedian_*_*', 'keep *_dedxTruncated40_*_*' ) -) - -process.RECOAndDeDxEventContent.outputCommands.extend(process.RecoLocalTrackerRECO.outputCommands) - -process.RECOAndDeDxEventContent.outputCommands.extend(process.TrackingToolsRECO.outputCommands) - -process.RECOAndDeDxEventContent.outputCommands.extend(process.RecoTrackerRECO.outputCommands) - -process.RECOAndDeDxEventContent.outputCommands.extend(process.BeamSpotRECO.outputCommands) - -process.RECOAndDeDxEventContent.outputCommands.extend(process.DeDxEventContent.outputCommands) - - -process.RE_RECO = cms.OutputModule("PoolOutputModule", - process.RECOAndDeDxEventContent, - fileName = cms.untracked.string('/tmp/gbruno/rereco.root') -) - -#process.p1 = cms.Path(process.reconstruction * (process.doAlldEdXEstimators + process.doAlldEdXDiscriminators) ) -process.p1 = cms.Path(process.RawToDigi * process.reconstruction * process.doAlldEdXEstimators ) -process.outpath = cms.EndPath(process.RE_RECO) -process.GlobalTag.globaltag = "IDEAL_V5::All" - diff --git a/RecoTracker/DeDx/test/DeDxFromRefitter_Cosmics_cfg.py b/RecoTracker/DeDx/test/DeDxFromRefitter_Cosmics_cfg.py deleted file mode 100644 index 6e52f0dd5ddf8..0000000000000 --- a/RecoTracker/DeDx/test/DeDxFromRefitter_Cosmics_cfg.py +++ /dev/null @@ -1,217 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -process = cms.Process("DEDX") - -process.load("FWCore.MessageLogger.MessageLogger_cfi") - -process.source = cms.Source("PoolSource", - skipEvents = cms.untracked.uint32(25000), - fileNames = cms.untracked.vstring( -### Run 60302 -# '/store/data/Commissioning08/Cosmics/RECO/EW35_3T_v1/000/060/302/2E653B32-1277-DD11-A8F2-0030487A3232.root', #Run60302 -# '/store/data/Commissioning08/Cosmics/RECO/EW35_3T_v1/000/060/302/749B859D-2C76-DD11-9837-001D09F24498.root', #Run60302 -# '/store/data/Commissioning08/Cosmics/RECO/EW35_3T_v1/000/060/302/8E5B9DA9-2E76-DD11-90BB-0019B9F70607.root' #Run60302 -### Run 62966 - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/02859E73-7684-DD11-B423-000423D6C8E6.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0288ECB3-7684-DD11-AC06-001617C3B5F4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/02940ECF-7884-DD11-9BDE-001617C3B6E8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/04289E48-6684-DD11-BE00-000423D986C4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/04D43F2D-6B84-DD11-9837-000423D944F0.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0663FAC9-7384-DD11-952C-000423D94700.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0820A8E6-6C84-DD11-84D0-001617C3B76A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/08C0E279-7284-DD11-AA7C-000423D98E30.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0AA89A75-6684-DD11-A105-000423D944FC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0ABD64CB-6884-DD11-ABC3-000423D94494.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/0CF5ADF2-6384-DD11-B577-0019DB29C5FC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/10F5D3F3-7484-DD11-AF5B-001617DBD556.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/10FE209C-7184-DD11-8C0A-001617E30CA4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/1AD58EFC-7B84-DD11-8031-0019DB29C614.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/1CAA6E09-6884-DD11-88B6-000423D8F63C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/1CD824A6-7384-DD11-847E-000423D98DB4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/1EF05A16-6D84-DD11-BF2B-000423D9A212.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/22984393-7984-DD11-8EB5-001617E30F48.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/22CF4EA0-7584-DD11-A511-000423D6B42C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/287F6730-6C84-DD11-8982-001617DBD288.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/28E6C767-6384-DD11-BABA-001617C3B79A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/2A24FA10-6B84-DD11-B643-000423D98844.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/2E873AB4-7084-DD11-9EA9-001617E30CE8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/2EB44549-7184-DD11-AB85-000423D99896.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/3627FA38-7084-DD11-A9D7-001617C3B6E2.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/36BD3A57-6784-DD11-97DA-000423D6B358.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/36DF4B2D-7284-DD11-AC06-000423D98F98.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/384AEF4B-6684-DD11-9508-001617E30CC8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/3AFE9B0D-6F84-DD11-AEAC-000423D98DC4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/403A347A-7D84-DD11-ADD2-0016177CA778.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/40F103F8-6484-DD11-8B5C-000423D6A6F4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/4201A618-6384-DD11-BCE9-001617E30E28.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/423C700A-6C84-DD11-A8D8-001617C3B70E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/4292E820-6E84-DD11-B597-001617E30D40.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/462E1067-6F84-DD11-A09C-000423D94A04.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/4CE876CB-6B84-DD11-A81D-000423D94A20.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/4E06B006-6E84-DD11-A316-000423D98AF0.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/505B4F5C-7784-DD11-AEC4-000423D6CAF2.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/522104D1-6284-DD11-8234-001617E30D4A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/52DCC530-7284-DD11-B976-001617DC1F70.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/56FCC408-6884-DD11-B4C9-000423D99AAA.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/58F3AE50-7984-DD11-9BE9-001617DBD332.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/5A4E353B-7484-DD11-B710-000423D9970C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/5C36036C-7C84-DD11-844B-001617E30F58.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/603F65C6-6284-DD11-BAFE-001617E30D38.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/607C1852-7384-DD11-8C8B-000423D99394.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/60CF9E27-7484-DD11-9925-001617C3B710.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/624761B5-6884-DD11-B098-001617E30CA4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/62C9526C-7084-DD11-B0E6-000423D33970.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/64ADDAE1-6E84-DD11-ACD4-000423D9517C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/660C8760-7E84-DD11-8103-000423D6B5C4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/662E2DA7-6584-DD11-9FE3-000423D99660.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/666EF690-7C84-DD11-B989-000423D98B28.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/66FE013E-7F84-DD11-B031-001617C3B706.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/6A08BE67-6884-DD11-822F-001617DBCF6A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/6E8650B8-6784-DD11-8150-000423D992DC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/72AF5CFD-7084-DD11-953E-000423D987FC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/766F94F0-7784-DD11-908C-001617C3B6FE.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/76FD0515-6384-DD11-8CF8-000423D98F98.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7A19155C-7E84-DD11-8BD9-001617C3B73A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7A422BEE-6B84-DD11-99B7-000423D985B0.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7AD3DCB4-6784-DD11-AB00-000423D996C8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7AEC3D06-6F84-DD11-AFD5-000423D94AA8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7E1850C7-6184-DD11-B1C5-001617DBD224.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/7E87EC73-7C84-DD11-BD26-000423D99160.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/807F4531-7B84-DD11-955C-001617DBD230.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/80BF05A3-7784-DD11-A449-001617E30F4C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/8A1BD799-6784-DD11-ACEB-000423D99E46.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/8E90405D-6C84-DD11-91AF-000423D98B6C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/92D2C0A5-6284-DD11-B7A3-001617E30D38.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/94C98133-6B84-DD11-A822-000423D99AA2.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9648156E-7184-DD11-B65C-000423D98C20.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/968FF9AD-6A84-DD11-B9B3-001617C3B6CC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/98183930-6484-DD11-A45B-000423D98800.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9873FAA3-6584-DD11-A84A-000423D94524.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9A5609A3-7784-DD11-B640-0019DB29C620.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9ACFB350-7984-DD11-9F38-001617C3B6C6.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9C4EDAD4-7084-DD11-96F2-000423D9989E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/9EB8414E-7484-DD11-BD55-001617C3B6DE.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/A286EC4D-7A84-DD11-897C-001617C3B778.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/A6DA38D1-7084-DD11-8DF5-000423D99F3E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/A8D11CFC-6D84-DD11-8F48-000423D98E54.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/AAA3D426-6784-DD11-86DF-001617C3B65A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/AEA9935C-6884-DD11-B724-000423D9870C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B00CD9EF-6184-DD11-BE6D-001617E30E2C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B00D7F3C-7884-DD11-8CB8-001617DBD5AC.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B26E6DAC-7584-DD11-91F9-001617C3B78C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B48AA648-7384-DD11-A280-001617C3B76E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/B4EC2E1D-6984-DD11-9C9D-000423D174FE.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/BC8E7772-6C84-DD11-9423-00161757BF42.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/BEA27E68-6D84-DD11-B8EA-000423D94908.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C090E88C-6784-DD11-ACE2-001617E30D00.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C099710B-7584-DD11-BD5F-000423D992A4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C0D12197-7484-DD11-A39B-001617C3B69C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C4DA3B49-7384-DD11-BAF5-000423D94AA8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/C6FE498B-7584-DD11-BE9A-001617DBCF90.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/CA421835-7484-DD11-850E-000423D9863C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/CABC564A-7984-DD11-AF7E-001617E30F56.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/CC869C73-6684-DD11-AE92-000423D98BC4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/CE5EA015-7884-DD11-AADA-001617C3B64C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/D0EA5EFC-7B84-DD11-A9F3-001617E30D12.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/D2998715-7A84-DD11-8E6B-000423D6CA6E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/D2F5DA95-6D84-DD11-ADCF-000423D985E4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/DAEF6241-6A84-DD11-BFA2-000423D98A44.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/DC0954EC-6B84-DD11-A06D-000423D99B3E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/DC2E9F92-7384-DD11-B26C-000423D99F3E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/DEF25FD6-7684-DD11-8A37-0019DB2F3F9B.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E03C73FE-7B84-DD11-835A-001617E30CD4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E2ED7F85-6284-DD11-8302-001617C3B6CE.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E458657A-8484-DD11-A767-001617C3B654.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E48A7833-7284-DD11-9D81-000423D99F1E.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E67C4A89-6584-DD11-9E87-000423DD2F34.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/E8A554C9-7784-DD11-93C0-001617DF785A.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/EAABFC82-7284-DD11-A1FC-000423D98634.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/EE7CEAC6-6B84-DD11-B551-000423D98E6C.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F236442D-7A84-DD11-A0A3-000423D98750.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F416F436-7084-DD11-A961-001617DBD316.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F4273102-7A84-DD11-999E-001617C3B5E4.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F60A7FDB-6D84-DD11-A5C8-001617E30F50.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/F8D547BE-6884-DD11-822B-000423D95030.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/FA34CEA6-6184-DD11-B69B-001617E30D06.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/FCC6D647-6A84-DD11-95D8-000423D98EC8.root', - '/store/data/BeamCommissioning08/Cosmics/RECO/v1/000/062/966/FCD1FD91-6684-DD11-8FA8-000423D9A2AE.root' - ) -) - -process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(10) -) - - -# Conditions (Global Tag is used here): -process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") -process.GlobalTag.connect = "frontier://PromptProd/CMS_COND_21X_GLOBALTAG" -process.GlobalTag.globaltag = "CRUZET4_V4P::All" -process.prefer("GlobalTag") - -# Magnetic field -process.load("Configuration.StandardSequences.MagneticField_38T_cff") - - -process.load("TrackingTools.TrackRefitter.TracksToTrajectories_cff") - -process.load("Geometry.CMSCommonData.cmsIdealGeometryXML_cfi") -process.load("Geometry.TrackerGeometryBuilder.trackerGeometry_cfi") -process.load("Geometry.TrackerNumberingBuilder.trackerNumberingGeometry_cfi") -process.load("Geometry.CommonDetUnit.globalTrackingGeometry_cfi") - -process.filterOnTracks = cms.EDFilter("TrackCountFilter", -# src = cms.InputTag('ctfWithMaterialTracksP5'), - src = cms.InputTag('globalCosmicMuons'), - minNumber = cms.uint32(1) -) - -#import RecoTracker.TrackProducer.TrackRefitter_cff -#process.CTFRefit = RecoTracker.TrackProducer.RefitterWithMaterial_cfi.TrackRefitter.clone() -#process.CTFRefit.src = 'ctfWithMaterialTracksP5' - -#process.load("RecoTracker.TrackProducer.TrackRefitter_cff") -#process.TrackRefitter.src = 'ctfWithMaterialTracksP5' -#process.TrackRefitter.TrajectoryInEvent = True - - -#process.load("RecoTracker.TransientTrackingRecHit.TransientTrackingRecHitBuilderWithoutRefit_cfi") - -process.load("RecoLocalTracker.SiPixelRecHits.PixelCPEESProducers_cff") -process.globalMuons = cms.EDProducer("TracksToTrajectories", - Tracks = cms.InputTag("globalCosmicMuons"), - TrackTransformer = cms.PSet( - Fitter = cms.string('KFFitterForRefitInsideOut'), - TrackerRecHitBuilder = cms.string('WithTrackAngle'), - Smoother = cms.string('KFSmootherForRefitInsideOut'), - MuonRecHitBuilder = cms.string('MuonRecHitBuilder'), - RefitDirection = cms.string('insideOut'), - RefitRPCHits = cms.bool(True), - Propagator = cms.string('SmartPropagatorAnyRK') - ) -) - -#process.load("Analysis.DiscriminationPower.dedxDiscriminationPower_cff") - -#process.load("RecoTracker.DeDx.dedxEstimators_cff") -process.load("RecoTracker.DeDx.dedxEstimatorsFromRefitter_Cosmics_cff") - -# OUT -process.TFileService = cms.Service("TFileService", fileName = cms.string('histo.root') ) - -process.OUT = cms.OutputModule("PoolOutputModule", - fileName = cms.untracked.string('out.root'), - outputCommands = cms.untracked.vstring( -# 'keep *' - 'drop *', - 'keep *_dedxHarmonic2_*_*' ,'keep *_dedxMedian_*_*', 'keep *_dedxTruncated40_*_*', - 'keep recoTracks_*_*_*' - ) -) - -#process.p = cms.Path(process.filterOnTracks * process.TrackRefitter + process.dedxDiscrimPower) - -#process.p = cms.Path(process.filterOnTracks * process.TrackRefitter * process.doAlldEdXEstimators) -process.p = cms.Path(process.filterOnTracks * process.doAlldEdXEstimators) -process.outpath = cms.EndPath(process.OUT) -process.schedule = cms.Schedule(process.p, process.outpath) diff --git a/RecoTracker/DeDx/test/DeDxFromRefitter_MCCollisions_cfg.py b/RecoTracker/DeDx/test/DeDxFromRefitter_MCCollisions_cfg.py deleted file mode 100644 index 4bf23cedb9d18..0000000000000 --- a/RecoTracker/DeDx/test/DeDxFromRefitter_MCCollisions_cfg.py +++ /dev/null @@ -1,81 +0,0 @@ -import FWCore.ParameterSet.Config as cms - -process = cms.Process("REFITTING") -process.load("Configuration.StandardSequences.Services_cff") - -process.load("Configuration.StandardSequences.GeometryPilot2_cff") - -process.load("Configuration.StandardSequences.MagneticField_38T_cff") - -process.load("FWCore.MessageService.MessageLogger_cfi") - -process.load("Configuration.StandardSequences.RawToDigi_cff") - -#process.load("Configuration.StandardSequences.Digi_cff") - -process.load("Configuration.StandardSequences.Reconstruction_cff") - -process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff") - -process.load("Configuration.EventContent.EventContent_cff") - -process.load("RecoTracker.DeDx.dedxEstimatorsFromRefitter_cff") - -#process.load("RecoTracker.DeDx.dedxEstimators_cff") -#process.dedxTruncated40.tracks=cms.InputTag("TrackRefitter") -#process.dedxTruncated40.trajectoryTrackAssociation = cms.InputTag("TrackRefitter") -#process.dedxHarmonic2.tracks=cms.InputTag("TrackRefitter") -#process.dedxHarmonic2.trajectoryTrackAssociation = cms.InputTag("TrackRefitter") - -#process.dedxMedian.tracks=cms.InputTag("TrackRefitter") -#process.dedxMedian.trajectoryTrackAssociation = cms.InputTag("TrackRefitter") - -#process.load("RecoTracker.TrackProducer.TrackRefitter_cff") -#process.TrackRefitter.TrajectoryInEvent = True - - -process.maxEvents = cms.untracked.PSet( - input = cms.untracked.int32(10) -) -process.source = cms.Source("PoolSource", - catalog = cms.untracked.string('PoolFileCatalog.xml'), -# fileNames = cms.untracked.vstring('/store/relval/CMSSW_2_1_7/RelValMinBias/GEN-SIM-DIGI-RAW-HLTDEBUG/STARTUP_V7_v1/0001/0488E703-C27D-DD11-9F5E-001617C3B710.root') - fileNames = cms.untracked.vstring('file:/tmp/gbruno/rereco.root') - -) - -process.Timing = cms.Service("Timing") -process.SimpleMemoryCheck = cms.Service("SimpleMemoryCheck", ignoreTotal = cms.untracked.int32(1) ) -#process.ProfilerService = cms.Service("SimpleMemoryCheck", firstEvent = cms.untracked.int32(2), lastEvent = cms.untracked.int32(10), paths = cms.untracked.vstring('p1') ) - - -#RECO content -process.RECOAndDeDxEventContent = cms.PSet( - outputCommands = cms.untracked.vstring( -'keep *')) -#recoTracks_TrackRefitterTracks_*_*', -# 'keep recoTrackExtras_TrackRefitterTracks_*_*', -# 'keep TrackingRecHitsOwned_TrackRefitterTracks_*_*', -# 'keep recoTracks_generalTracks_*_*', -# 'keep recoTrackExtras_generalTracks_*_*', -# 'keep TrackingRecHitsOwned_generalTracks_*_*', -# 'keep recoTracks_rsWithMaterialTracks_*_*', -# 'keep recoTrackExtras_rsWithMaterialTracks_*_*', -# 'keep TrackingRecHitsOwned_rsWithMaterialTracks_*_*' ,'keep *_dedxHarmonic2_*_*' ,'keep *_dedxMedian_*_*', 'keep *_dedxTruncated40_*_*' ) -#) - -#process.RECOAndDeDxEventContent.outputCommands.extend(process.RECOEventContent.outputCommands) - - - -process.RE_RECO = cms.OutputModule("PoolOutputModule", - process.RECOAndDeDxEventContent, - fileName = cms.untracked.string('/tmp/gbruno/rerecorefitter.root') -) - -#process.p1 = cms.Path(process.reconstruction * (process.doAlldEdXEstimators + process.doAlldEdXDiscriminators) ) -#process.p1 = cms.Path(process.TrackRefitter * process.doAlldEdXEstimators ) -process.p1 = cms.Path( process.doAlldEdXEstimators ) -process.outpath = cms.EndPath(process.RE_RECO) -process.GlobalTag.globaltag = "IDEAL_V5::All" - diff --git a/RecoTracker/DeDx/test/analysisTif.C b/RecoTracker/DeDx/test/analysisTif.C deleted file mode 100644 index 11c71ef7d7688..0000000000000 --- a/RecoTracker/DeDx/test/analysisTif.C +++ /dev/null @@ -1,50 +0,0 @@ -init() -{ -gSystem->Load("libFWCoreFWLite"); -AutoLibraryLoader::enable(); - -} - - - -setAlias() -{ -Events->SetAlias("hits","recoTracksedmRefProdTorecoDeDxHitssAssociationVector_dedxHitsFromRefitter__tracks.obj.data_"); -Events->SetAlias("harmonic4","recoTracksedmRefProdTofloatsAssociationVector_dedxHarmonic4__tracks.obj.data_"); -Events->SetAlias("normCharge","hits.m_charge"); -Events->SetAlias("hitLayer","hits.layer()"); -Events->SetAlias("hitSubDet","hits.subDet()"); -Events->SetAlias("hitSubDetSide","hits.subDetSide()"); -Events->SetAlias("pathLen","hits.m_pathLength"); -cout << "Aliases defined: " << endl; -cout << " hits: DeDxHit object, see LXR" << endl; -cout << " normCharge: normalized charge (i.e. dE/dX)" << endl; -cout << " hitLayer: layer of a given DeDxHit" << endl; -cout << " hitSubDet: subDet of a given DeDxHit" << endl; -cout << " hitSubDetSide: +Z or -Z side of a given DeDxHit" << endl; -cout << " pathLen: path length used for normalization" << endl; -} - -drawAll() -{ - new TCanvas; - Events->Draw("harmonic4"); - new TCanvas; - Events->Draw("normCharge"); - new TCanvas ; - Events->Draw("normCharge:pathLen","pathLen<1. && normCharge < 7","COLZ"); - new TCanvas; - Events->Draw("normCharge:pathLen","pathLen<1. && normCharge < 7","profile"); - -} - -doAll(const char * name = "test.root") -{ - init(); - TFile *_file0 = TFile::Open(name); - setAlias(); - gStyle->SetPalette(1) ; - drawAll(); - -} - diff --git a/SLHCUpgradeSimulations/Configuration/python/muonCustoms.py b/SLHCUpgradeSimulations/Configuration/python/muonCustoms.py index 17a0fb873d3d3..f46fcc805db64 100644 --- a/SLHCUpgradeSimulations/Configuration/python/muonCustoms.py +++ b/SLHCUpgradeSimulations/Configuration/python/muonCustoms.py @@ -129,7 +129,7 @@ def customise_csc_Digitizer(process): return process -def customise_csc_L1Stubs(process): +def customise_csc_L1Stubs_sim(process): """Configure the local CSC trigger stubs emulator with the upgrade algorithm version that efficiently uses unganged ME1a """ @@ -144,10 +144,9 @@ def customise_csc_L1Stubs(process): return process -def customise_csc_L1TrackFinder(process): +def customise_csc_L1TrackFinder_sim(process): """Regular CSCTF configuration adapted to deal with unganged ME1a """ - from L1Trigger.CSCTrackFinder.csctfTrackDigisUngangedME1a_cfi import csctfTrackDigisUngangedME1a process.simCsctfTrackDigis = csctfTrackDigisUngangedME1a process.simCsctfTrackDigis.DTproducer = cms.untracked.InputTag("simDtTriggerPrimitiveDigis") @@ -156,27 +155,26 @@ def customise_csc_L1TrackFinder(process): return process -def customise_csc_L1Emulator(process): +def customise_csc_L1Emulator_sim(process): """Customise both stubs and TF emulators """ - process = customise_csc_L1Stubs(process) - process = customise_csc_L1TrackFinder(process) + process = customise_csc_L1Stubs_sim(process) + process = customise_csc_L1TrackFinder_sim(process) return process def customise_csc_Packer(process): - """Get rid of process.cscpacker and process.csctfpacker in all the paths + """Use 2013 a.k.a. post-LS1 version """ - process = remove_from_all_paths(process, 'cscpacker') - process = remove_from_all_paths(process, 'csctfpacker') + process.cscpacker.useFormatVersion = cms.uint32(2013) + process.cscpacker.usePreTriggers = cms.bool(False) + process.cscpacker.packEverything = cms.bool(True) return process def customise_csc_Unpacker(process): - """Get rid of process.muonCSCDigis and process.csctfDigis in all the paths + """Do nothing at the moment """ - process = remove_from_all_paths(process, 'muonCSCDigis') - process = remove_from_all_paths(process, 'csctfDigis') return process @@ -213,37 +211,20 @@ def customise_csc_LocalReco(process): # Turn off some flags for CSCRecHitD that are turned ON in default config process.csc2DRecHits.readBadChannels = cms.bool(False) - process.csc2DRecHits.CSCUseGasGainCorrection = cms.bool(False) - - # Switch input for CSCRecHitD to s i m u l a t e d digis - process.csc2DRecHits.wireDigiTag = cms.InputTag("simMuonCSCDigis", "MuonCSCWireDigi") - process.csc2DRecHits.stripDigiTag = cms.InputTag("simMuonCSCDigis", "MuonCSCStripDigi") + process.csc2DRecHits.CSCUseGasGainCorrections = cms.bool(False) return process def customise_csc_DQM(process): - """At this point: get rid of process.muonAnalyzer, adjust cscMonitor's input + """Do nothing special. May need some adjustments for unganged ME11 """ - process = remove_from_all_paths(process, 'muonAnalyzer') - - process.cscMonitor.clctDigiTag = cms.InputTag("simCscTriggerPrimitiveDigis") - process.cscMonitor.stripDigiTag = cms.InputTag("simMuonCSCDigis", "MuonCSCStripDigi") - process.cscMonitor.wireDigiTag = cms.InputTag("simMuonCSCDigis", "MuonCSCWireDigi") - process.cscMonitor.alctDigiTag = cms.InputTag("simCscTriggerPrimitiveDigis") - - process.l1tCsctf.statusProducer=cms.InputTag("null") - process.l1tCsctf.lctProducer=cms.InputTag("null") - process.l1tCsctf.trackProducer=cms.InputTag("null") - process.l1tCsctf.mbProducer=cms.InputTag("null") - return process def customise_csc_Validation(process): - """At this point, just get rid of process.relvalMuonBits + """Nothing for now """ - process = remove_from_all_paths(process, 'relvalMuonBits') return process @@ -266,11 +247,11 @@ def customise_csc_PostLS1(process): # L1 stub emulator upgrade algorithm if hasattr(process, 'simCscTriggerPrimitiveDigis'): - process = customise_csc_L1Stubs(process) + process = customise_csc_L1Stubs_sim(process) # CSCTF that can deal with unganged ME1a if hasattr(process, 'simCsctfTrackDigis'): - process = customise_csc_L1TrackFinder(process) + process = customise_csc_L1TrackFinder_sim(process) # packer - simply get rid of it if hasattr(process, 'cscpacker') or hasattr(process, 'csctfpacker'): @@ -303,9 +284,4 @@ def customise_csc_hlt(process): process = customise_csc_Indexing(process) - # Switch input for CSCRecHitD to s i m u l a t e d digis - - process.hltCsc2DRecHits.wireDigiTag = cms.InputTag("simMuonCSCDigis","MuonCSCWireDigi") - process.hltCsc2DRecHits.stripDigiTag = cms.InputTag("simMuonCSCDigis","MuonCSCStripDigi") - return process diff --git a/SLHCUpgradeSimulations/Configuration/python/muonCustomsPreMixing.py b/SLHCUpgradeSimulations/Configuration/python/muonCustomsPreMixing.py index 03338858ea05d..060f7d47c4296 100644 --- a/SLHCUpgradeSimulations/Configuration/python/muonCustomsPreMixing.py +++ b/SLHCUpgradeSimulations/Configuration/python/muonCustomsPreMixing.py @@ -127,7 +127,7 @@ def customise_csc_Digitizer(process): return process -def customise_csc_L1Stubs(process): +def customise_csc_L1Stubs_sim(process): """Configure the local CSC trigger stubs emulator with the upgrade algorithm version that efficiently uses unganged ME1a """ @@ -142,7 +142,7 @@ def customise_csc_L1Stubs(process): return process -def customise_csc_L1TrackFinder(process): +def customise_csc_L1TrackFinder_sim(process): """Regular CSCTF configuration adapted to deal with unganged ME1a """ @@ -154,27 +154,26 @@ def customise_csc_L1TrackFinder(process): return process -def customise_csc_L1Emulator(process): +def customise_csc_L1Emulator_sim(process): """Customise both stubs and TF emulators """ - process = customise_csc_L1Stubs(process) - process = customise_csc_L1TrackFinder(process) + process = customise_csc_L1Stubs_sim(process) + process = customise_csc_L1TrackFinder_sim(process) return process def customise_csc_Packer(process): - """Get rid of process.cscpacker and process.csctfpacker in all the paths + """Use 2013 a.k.a. post-LS1 version """ - process = remove_from_all_paths(process, 'cscpacker') - process = remove_from_all_paths(process, 'csctfpacker') + process.cscpacker.useFormatVersion = cms.uint32(2013) + process.cscpacker.usePreTriggers = cms.bool(False) + process.cscpacker.packEverything = cms.bool(True) return process def customise_csc_Unpacker(process): - """Get rid of process.muonCSCDigis and process.csctfDigis in all the paths + """Do nothing at the moment """ - process = remove_from_all_paths(process, 'muonCSCDigis') - process = remove_from_all_paths(process, 'csctfDigis') return process @@ -211,37 +210,20 @@ def customise_csc_LocalReco(process): # Turn off some flags for CSCRecHitD that are turned ON in default config process.csc2DRecHits.readBadChannels = cms.bool(False) - process.csc2DRecHits.CSCUseGasGainCorrection = cms.bool(False) - - # Switch input for CSCRecHitD to s i m u l a t e d (and Mixed!) digis - process.csc2DRecHits.wireDigiTag = cms.InputTag("mixData", "MuonCSCWireDigisDM") - process.csc2DRecHits.stripDigiTag = cms.InputTag("mixData", "MuonCSCStripDigisDM") + process.csc2DRecHits.CSCUseGasGainCorrections = cms.bool(False) return process def customise_csc_DQM(process): - """At this point: get rid of process.muonAnalyzer, adjust cscMonitor's input + """Runs after RAW2DIGI, so, should use defaults """ - process = remove_from_all_paths(process, 'muonAnalyzer') - - process.cscMonitor.clctDigiTag = cms.InputTag("simCscTriggerPrimitiveDigis") - process.cscMonitor.stripDigiTag = cms.InputTag("mixData", "MuonCSCStripDigisDM") - process.cscMonitor.wireDigiTag = cms.InputTag("mixData", "MuonCSCWireDigisDM") - process.cscMonitor.alctDigiTag = cms.InputTag("simCscTriggerPrimitiveDigis") - - process.l1tCsctf.statusProducer=cms.InputTag("null") - process.l1tCsctf.lctProducer=cms.InputTag("null") - process.l1tCsctf.trackProducer=cms.InputTag("null") - process.l1tCsctf.mbProducer=cms.InputTag("null") - return process def customise_csc_Validation(process): - """At this point, just get rid of process.relvalMuonBits + """Nothing for now """ - process = remove_from_all_paths(process, 'relvalMuonBits') return process @@ -264,11 +246,11 @@ def customise_csc_PostLS1(process): # L1 stub emulator upgrade algorithm if hasattr(process, 'simCscTriggerPrimitiveDigis'): - process = customise_csc_L1Stubs(process) + process = customise_csc_L1Stubs_sim(process) # CSCTF that can deal with unganged ME1a if hasattr(process, 'simCsctfTrackDigis'): - process = customise_csc_L1TrackFinder(process) + process = customise_csc_L1TrackFinder_sim(process) # packer - simply get rid of it if hasattr(process, 'cscpacker') or hasattr(process, 'csctfpacker'): @@ -297,11 +279,8 @@ def customise_csc_hlt(process): process.CSCGeometryESModule.useGangedStripsInME1a = False process.hltCsc2DRecHits.readBadChannels = cms.bool(False) - process.hltCsc2DRecHits.CSCUseGasGainCorrection = cms.bool(False) - - # Switch input for CSCRecHitD to s i m u l a t e d (and Mixed!) digis + process.hltCsc2DRecHits.CSCUseGasGainCorrections = cms.bool(False) - process.hltCsc2DRecHits.wireDigiTag = cms.InputTag("mixData","MuonCSCWireDigisDM") - process.hltCsc2DRecHits.stripDigiTag = cms.InputTag("mixData","MuonCSCStripDigisDM") + process = customise_csc_Indexing(process) return process diff --git a/SUSYBSMAnalysis/Skimming/python/EXOHSCP_cff.py b/SUSYBSMAnalysis/Skimming/python/EXOHSCP_cff.py index 96d48b5c0adf8..d31df8daafd1b 100644 --- a/SUSYBSMAnalysis/Skimming/python/EXOHSCP_cff.py +++ b/SUSYBSMAnalysis/Skimming/python/EXOHSCP_cff.py @@ -20,27 +20,11 @@ TrackRefitterSkim = TrackRefitter.clone() TrackRefitterSkim.src = "generalTracksSkim" - -dedxSkimNPHarm2 = cms.EDProducer("DeDxEstimatorProducer", - tracks = cms.InputTag("TrackRefitterSkim"), - trajectoryTrackAssociation = cms.InputTag("TrackRefitterSkim"), - - estimator = cms.string('generic'), - exponent = cms.double(-2.0), - - UseStrip = cms.bool(True), - UsePixel = cms.bool(False), - MeVperADCStrip = cms.double(3.61e-06*265), - MeVperADCPixel = cms.double(3.61e-06), - - MisCalib_Mean = cms.untracked.double(1.0), - MisCalib_Sigma = cms.untracked.double(0.00), - - UseCalibration = cms.bool(False), - calibrationPath = cms.string(""), - ShapeTest = cms.bool(True), -) - +from RecoTracker.DeDx.dedxEstimators_cff import dedxHarmonic2 +dedxSkimNPHarm2 = dedxHarmonic2.clone() +dedxSkimNPHarm2.tracks = cms.InputTag("TrackRefitterSkim") +dedxSkimNPHarm2.trajectoryTrackAssociation = cms.InputTag("TrackRefitterSkim") +dedxSkimNPHarm2.UsePixel = cms.bool(False) DedxFilter = cms.EDFilter("HSCPFilter", inputMuonCollection = cms.InputTag("muons"), diff --git a/Validation/EventGenerator/src/HepMCValidationHelper.cc b/Validation/EventGenerator/src/HepMCValidationHelper.cc index 3b969a3444407..4a0ed26d0e632 100644 --- a/Validation/EventGenerator/src/HepMCValidationHelper.cc +++ b/Validation/EventGenerator/src/HepMCValidationHelper.cc @@ -1,5 +1,6 @@ #include "Validation/EventGenerator/interface/HepMCValidationHelper.h" #include "DataFormats/Math/interface/deltaR.h" +#include "FWCore/MessageLogger/interface/MessageLogger.h" #include #include #include @@ -184,7 +185,11 @@ namespace HepMCValidationHelper { for (unsigned int i = 0; i < taus.size(); ++i){ std::vector taudaughters; findDescendents(taus[i], taudaughters); - assert(taudaughters.size()>0); + //assert(taudaughters.size()>0); + if ( taudaughters.size()==0 ) { + edm::LogError("HepMCValidationHelper") << "Tau with no daughters. This is a bug. Fix it"; + continue; + } const HepMC::FourVector& taumom = taus[i]->momentum(); //remove the daughters from the list of particles to compute isolation std::vector forIsolation; diff --git a/Validation/RecoHI/plugins/HiBasicGenTest.cc b/Validation/RecoHI/plugins/HiBasicGenTest.cc index 6a04efe9767d9..76e43b53bd213 100644 --- a/Validation/RecoHI/plugins/HiBasicGenTest.cc +++ b/Validation/RecoHI/plugins/HiBasicGenTest.cc @@ -72,21 +72,28 @@ void HiBasicGenTest::analyze(const edm::Event& iEvent,const edm::EventSetup& iSe const HepMC::GenEvent *evt = mc->GetEvent(); const HepMC::HeavyIon *hi = evt->heavy_ion(); - double ip = hi->impact_parameter(); - double phi0 = hi->event_plane_angle(); - - // fill reaction plane distribution - rp->Fill(phi0); - - // if the event is in one of the centrality bins of interest fill hists - int cbin=-1; - if(ip < 5.045) cbin=0; - else if (ip < 7.145 && ip > 5.045) cbin=1; - else if (ip < 15.202 && ip > 14.283) cbin=2; - if(cbin<0) return; + int cbin = 0; + double phi0 =0.; + + if(hi){ + + double ip = hi->impact_parameter(); + phi0 = hi->event_plane_angle(); + + // fill reaction plane distribution + rp->Fill(phi0); + + // if the event is in one of the centrality bins of interest fill hists + int cbin=-1; + if(ip < 5.045) cbin=0; + else if (ip < 7.145 && ip > 5.045) cbin=1; + else if (ip < 15.202 && ip > 14.283) cbin=2; + if(cbin<0) return; + + // fill impact parameter distributions + b[cbin]->Fill(ip); + } - // fill impact parameter distributions - b[cbin]->Fill(ip); // loop over particles HepMC::GenEvent::particle_const_iterator begin = evt->particles_begin(); diff --git a/Validation/RecoHI/python/TrackValidationHeavyIons_cff.py b/Validation/RecoHI/python/TrackValidationHeavyIons_cff.py index 00d4db0638000..5ee438cea39b6 100644 --- a/Validation/RecoHI/python/TrackValidationHeavyIons_cff.py +++ b/Validation/RecoHI/python/TrackValidationHeavyIons_cff.py @@ -10,7 +10,7 @@ # reco track quality cuts from Validation.RecoTrack.cuts_cff import * -cutsRecoTracks.src = "hiSelectedTracks" +cutsRecoTracks.src = "hiGeneralTracks" cutsRecoTracks.ptMin = 2.0 cutsRecoTracks.quality = [] @@ -26,8 +26,8 @@ hiTrackValidator = multiTrackValidator.clone( label_tp_effic = cms.InputTag("primaryChgSimTracks"), label_tp_fake = cms.InputTag("cutsTPFake"), - trackCollectionForDrCalculation = cms.InputTag("cutsRecoTracks"), signalOnlyTP = cms.bool(False), + trackCollectionForDrCalculation = cms.InputTag("cutsRecoTracks"), skipHistoFit = cms.untracked.bool(True), # done in post-processing minpT = cms.double(1.0), maxpT = cms.double(100.0), diff --git a/Validation/RecoHI/python/globalValidationHeavyIons_cff.py b/Validation/RecoHI/python/globalValidationHeavyIons_cff.py index da6aedc7e087f..60780df6f9a8a 100644 --- a/Validation/RecoHI/python/globalValidationHeavyIons_cff.py +++ b/Validation/RecoHI/python/globalValidationHeavyIons_cff.py @@ -6,7 +6,7 @@ from Validation.RecoHI.muonValidationHeavyIons_cff import * # change track label for rechits -hiTracks = 'hiSelectedTracks' +hiTracks = 'hiGeneralTracks' PixelTrackingRecHitsValid.src = hiTracks StripTrackingRecHitsValid.trajectoryInput = hiTracks @@ -47,7 +47,7 @@ + hcalRecHitsValidationSequence + calotowersValidationSequence - + hiTrackValidation # validation of 'hiSelectedTracks' + + hiTrackValidation # validation of 'hiGeneralTracks' + hiJetValidation # validation of pileup jet finders + hiRecoMuonValidation # validation of offline muon reco diff --git a/Validation/RecoHI/python/muonValidationHeavyIons_cff.py b/Validation/RecoHI/python/muonValidationHeavyIons_cff.py index b4bdff0be2121..9979187a97afb 100644 --- a/Validation/RecoHI/python/muonValidationHeavyIons_cff.py +++ b/Validation/RecoHI/python/muonValidationHeavyIons_cff.py @@ -5,7 +5,7 @@ # pt-selection of reco tracks import PhysicsTools.RecoAlgos.recoTrackSelector_cfi cutsRecoTrkMuons = PhysicsTools.RecoAlgos.recoTrackSelector_cfi.recoTrackSelector.clone() -cutsRecoTrkMuons.src = "hiSelectedTracks" +cutsRecoTrkMuons.src = "hiGeneralTracks" cutsRecoTrkMuons.quality = [] cutsRecoTrkMuons.ptMin = 2.0 diff --git a/Validation/RecoTrack/interface/MultiTrackValidatorBase.h b/Validation/RecoTrack/interface/MultiTrackValidatorBase.h index b9a761284a4e3..f371930e72c44 100644 --- a/Validation/RecoTrack/interface/MultiTrackValidatorBase.h +++ b/Validation/RecoTrack/interface/MultiTrackValidatorBase.h @@ -24,6 +24,7 @@ #include "CommonTools/RecoAlgos/interface/RecoTrackSelector.h" #include "SimTracker/Common/interface/TrackingParticleSelector.h" #include "CommonTools/RecoAlgos/interface/CosmicTrackingParticleSelector.h" +#include "DataFormats/Common/interface/ValueMap.h" #include @@ -71,8 +72,8 @@ class MultiTrackValidatorBase { std::string out; - edm::EDGetTokenT m_dEdx1Tag; - edm::EDGetTokenT m_dEdx2Tag; + edm::EDGetTokenT > m_dEdx1Tag; + edm::EDGetTokenT > m_dEdx2Tag; edm::ESHandle theMF; std::vector associator; diff --git a/Validation/RecoTrack/plugins/MultiTrackValidator.cc b/Validation/RecoTrack/plugins/MultiTrackValidator.cc index 94ad9c9dfe0ec..a0c00ae7f037a 100644 --- a/Validation/RecoTrack/plugins/MultiTrackValidator.cc +++ b/Validation/RecoTrack/plugins/MultiTrackValidator.cc @@ -55,8 +55,8 @@ MultiTrackValidator::MultiTrackValidator(const edm::ParameterSet& pset):MultiTra associatormapRtS = mayConsume(assMapInput); UseAssociators = pset.getParameter< bool >("UseAssociators"); - m_dEdx1Tag = mayConsume(pset.getParameter< edm::InputTag >("dEdx1Tag")); - m_dEdx2Tag = mayConsume(pset.getParameter< edm::InputTag >("dEdx2Tag")); + m_dEdx1Tag = mayConsume >(pset.getParameter< edm::InputTag >("dEdx1Tag")); + m_dEdx2Tag = mayConsume >(pset.getParameter< edm::InputTag >("dEdx2Tag")); tpSelector = TrackingParticleSelector(pset.getParameter("ptMinTP"), pset.getParameter("minRapidityTP"), diff --git a/Validation/RecoTrack/python/HLTmultiTrackValidator_cff.py b/Validation/RecoTrack/python/HLTmultiTrackValidator_cff.py index ccb269fb89742..e4914b4299a17 100644 --- a/Validation/RecoTrack/python/HLTmultiTrackValidator_cff.py +++ b/Validation/RecoTrack/python/HLTmultiTrackValidator_cff.py @@ -74,4 +74,3 @@ + hltIter4V + hltIter4MergedV ) - diff --git a/Validation/RecoTrack/test/macro/TrackValHistoPublisher.C b/Validation/RecoTrack/test/macro/TrackValHistoPublisher.C index 4b934adb9057e..210fd1a7d2545 100644 --- a/Validation/RecoTrack/test/macro/TrackValHistoPublisher.C +++ b/Validation/RecoTrack/test/macro/TrackValHistoPublisher.C @@ -1127,16 +1127,43 @@ void TrackValHistoPublisher(char* newFile="NEW_FILE",char* refFile="REF_FILE") rh2->GetYaxis()->SetTitleOffset(1.2); rh2->SetTitle(""); + rdir->GetObject(collname1+"/effic_vs_dr",rh3); + sdir->GetObject(collname2+"/effic_vs_dr",sh3); + rh3->GetYaxis()->SetRangeUser(0.,1.); + sh3->GetYaxis()->SetRangeUser(0.,1.); + rh3->GetXaxis()->SetTitle("#DeltaR"); + rh3->GetYaxis()->SetTitle("efficiency vs #DeltaR"); + rh3->GetYaxis()->SetTitleSize(0.05); + rh3->GetYaxis()->SetTitleOffset(1.2); + + rdir->GetObject(collname1+"/fakerate_vs_dr",rh4); + sdir->GetObject(collname2+"/fakerate_vs_dr",sh4); + rh4->GetXaxis()->SetTitle("#DeltaR"); + rh4->GetYaxis()->SetTitle("Fake rate vs #DeltaR"); + rh4->GetYaxis()->SetRangeUser(0.,MAXFAKE); + sh4->GetYaxis()->SetRangeUser(0.,MAXFAKE); + rh4->GetYaxis()->SetTitleSize(0.05); + rh4->GetYaxis()->SetTitleOffset(1.2); + rh4->SetTitle(""); + + canvas = new TCanvas("Tracks9","Tracks: efficiency & fakerate",1000,1400); - TH1 * r[2]={rh1,rh2}; - TH1 * s[2]={sh1,sh2}; + //TH1 * r[2]={rh1,rh2}; + //TH1 * s[2]={sh1,sh2}; - plotBuilding(canvas,s, r,2, - te,"UU",-1); + //plotBuilding(canvas,s, r,2, + // te,"UU",-1); + + Int_t optstat = gStyle->GetOptStat(); + plot4histos(canvas, + sh1,rh1,sh2,rh2, + sh3,rh3,sh4,rh4, + te,"UU",-1,0.1,false,false); canvas->cd(); - l = new TLegend(0.10,0.14,0.90,0.19); + //l = new TLegend(0.10,0.14,0.90,0.19); + l = new TLegend(0.17,0.465,0.97,0.515); l->SetTextSize(0.016); l->SetLineColor(1); l->SetLineWidth(1); @@ -1147,6 +1174,7 @@ void TrackValHistoPublisher(char* newFile="NEW_FILE",char* refFile="REF_FILE") l->AddEntry(sh1,newLabel,"LPF"); l->Draw(); canvas->Print("effvspos.pdf"); + gStyle->SetOptStat(optstat); delete l; //===== dE/dx @@ -1371,7 +1399,7 @@ void plot4histos(TCanvas *canvas, TH1 *s1,TH1 *r1, TH1 *s2,TH1 *r2, TH1 *s3,TH1 *r3, TH1 *s4,TH1 *r4, TText* te, - char * option, double startingY, double startingX = .1,bool fit = false){ + char * option, double startingY, double startingX = .1,bool fit = false, bool statflag = true){ canvas->Divide(2,2); s1->SetMarkerStyle(20); @@ -1423,24 +1451,34 @@ void plot4histos(TCanvas *canvas, //setStats(r1,s1, startingY, startingX, fit); canvas->cd(1); - setStats(s1,r1, 0.6, 0.65, false); + if (statflag) setStats(s1,r1, 0.6, 0.65, false); r1->Draw(); - s1->Draw("sames"); + if (statflag) s1->Draw("sames"); + else s1->Draw("same"); canvas->cd(2); - setStats(s2,r2, 0.6, 0.65, false); + if (statflag) setStats(s2,r2, 0.6, 0.65, false); r2->Draw(); - s2->Draw("sames"); + if (statflag) s2->Draw("sames"); + else s2->Draw("same"); canvas->cd(3); - setStats(s3,r3, 0.6, 0.65, false); + if (statflag) setStats(s3,r3, 0.6, 0.65, false); r3->Draw(); - s3->Draw("sames"); + if (statflag) s3->Draw("sames"); + else s3->Draw("same"); canvas->cd(4); - setStats(s4,r4, 0.6, 0.65, false); + if (statflag) setStats(s4,r4, 0.6, 0.65, false); + else gStyle->SetOptStat(0); r4->Draw(); - s4->Draw("sames"); + if (statflag) s4->Draw("sames"); + else s4->Draw("same"); + + TPad *pad=canvas->cd(3); + if(!statflag)pad->SetLogx(); + pad=(TPad*)canvas->cd(4); + if(!statflag)pad->SetLogx(); } diff --git a/Validation/RecoTrack/test/trackingPerformanceValidation.py b/Validation/RecoTrack/test/trackingPerformanceValidation.py index 9a8685f7e2316..b0585931699e4 100755 --- a/Validation/RecoTrack/test/trackingPerformanceValidation.py +++ b/Validation/RecoTrack/test/trackingPerformanceValidation.py @@ -11,47 +11,57 @@ ### Reference release -RefRelease='CMSSW_6_1_0' +RefRelease='CMSSW_7_2_0_pre3' ### Relval release (set if different from $CMSSW_VERSION) -NewRelease='CMSSW_6_2_0_pre1' +NewRelease='CMSSW_7_2_0_pre4' ### sample list ### This is the list of IDEAL-conditions relvals startupsamples= [ -'RelValMinBias', ### list of samples to be validated for each pre-release -'RelValQCD_Pt_3000_3500', -'RelValQCD_Pt_600_800', +#'RelValMinBias', ### list of samples to be validated for each pre-release +#'RelValTTbar', +#'RelValQCD_Pt_3000_3500', +#'RelValQCD_Pt_600_800', 'RelValSingleElectronPt35', 'RelValSingleElectronPt10', -'RelValTTbar', 'RelValSingleMuPt10', 'RelValSingleMuPt100', ] pileupstartupsamples = [ -'RelValTTbar' +#'RelValTTbar' ] fastsimstartupsamples = [ -'RelValTTbar' +#'RelValTTbar' ] pileupfastsimstartupsamples = [ -'RelValTTbar' +#'RelValTTbar' ] +putype = '25ns' + ### Sample version: v1,v2,etc.. -Version='v1' +Version='v2' # Global tags -StartupTag='START61_V8' +StartupTag='POSTLS172_V3' + +RefStartupTag='POSTLS172_V3' + + +#FastSimStartupTag='START72_V1' +FastSimStartupTag='POSTLS172_V3' + +#FastSimRefStartupTag='START71_V7' +FastSimRefStartupTag='POSTLS172_V3' -RefStartupTag='START61_V8' ### Track algorithm name and quality. Can be a list. -Algos= ['ootb', 'iter0', 'iter1','iter2','iter3','iter4','iter5','iter6','iter9','iter10'] +Algos= ['ootb', 'iter0', 'iter1','iter2','iter3','iter4','iter5','iter6','iter7','iter9','iter10'] Qualities=['', 'highPurity'] ### Leave unchanged unless the track collection name changes @@ -122,8 +132,8 @@ def replace(map, filein, fileout): def do_validation(samples, GlobalTag, trackquality, trackalgorithm, PileUp, sampleType, dofastfull): global Sequence, Version, RefSelection, RefRepository, NewSelection, NewRepository, defaultNevents, Events, castorHarvestedFilesDirectory global cfg, macro, Tracksname - tracks_map = { 'ootb':'general_AssociatorByHitsRecoDenom','iter0':'cutsRecoZero_AssociatorByHitsRecoDenom','iter1':'cutsRecoFirst_AssociatorByHitsRecoDenom','iter2':'cutsRecoSecond_AssociatorByHitsRecoDenom','iter3':'cutsRecoThird_AssociatorByHitsRecoDenom','iter4':'cutsRecoFourth_AssociatorByHitsRecoDenom','iter5':'cutsRecoFifth_AssociatorByHitsRecoDenom','iter6':'cutsRecoSixth_AssociatorByHitsRecoDenom','iter9':'cutsRecoNinth_AssociatorByHitsRecoDenom','iter10':'cutsRecoTenth_AssociatorByHitsRecoDenom'} - tracks_map_hp = { 'ootb':'cutsRecoHp_AssociatorByHitsRecoDenom','iter0':'cutsRecoZeroHp_AssociatorByHitsRecoDenom','iter1':'cutsRecoFirstHp_AssociatorByHitsRecoDenom','iter2':'cutsRecoSecondHp_AssociatorByHitsRecoDenom','iter3':'cutsRecoThirdHp_AssociatorByHitsRecoDenom','iter4':'cutsRecoFourthHp_AssociatorByHitsRecoDenom','iter5':'cutsRecoFifthHp_AssociatorByHitsRecoDenom','iter6':'cutsRecoSixthHp_AssociatorByHitsRecoDenom','iter9':'cutsRecoNinthHp_AssociatorByHitsRecoDenom','iter10':'cutsRecoTenthHp_AssociatorByHitsRecoDenom'} + tracks_map = { 'ootb':'general_AssociatorByHitsRecoDenom','iter0':'cutsRecoZero_AssociatorByHitsRecoDenom','iter1':'cutsRecoFirst_AssociatorByHitsRecoDenom','iter2':'cutsRecoSecond_AssociatorByHitsRecoDenom','iter3':'cutsRecoThird_AssociatorByHitsRecoDenom','iter4':'cutsRecoFourth_AssociatorByHitsRecoDenom','iter5':'cutsRecoFifth_AssociatorByHitsRecoDenom','iter6':'cutsRecoSixth_AssociatorByHitsRecoDenom','iter7':'cutsRecoSeventh_AssociatorByHitsRecoDenom','iter9':'cutsRecoNinth_AssociatorByHitsRecoDenom','iter10':'cutsRecoTenth_AssociatorByHitsRecoDenom'} + tracks_map_hp = { 'ootb':'cutsRecoHp_AssociatorByHitsRecoDenom','iter0':'cutsRecoZeroHp_AssociatorByHitsRecoDenom','iter1':'cutsRecoFirstHp_AssociatorByHitsRecoDenom','iter2':'cutsRecoSecondHp_AssociatorByHitsRecoDenom','iter3':'cutsRecoThirdHp_AssociatorByHitsRecoDenom','iter4':'cutsRecoFourthHp_AssociatorByHitsRecoDenom','iter5':'cutsRecoFifthHp_AssociatorByHitsRecoDenom','iter6':'cutsRecoSixthHp_AssociatorByHitsRecoDenom','iter7':'cutsRecoSeventhHp_AssociatorByHitsRecoDenom','iter9':'cutsRecoNinthHp_AssociatorByHitsRecoDenom','iter10':'cutsRecoTenthHp_AssociatorByHitsRecoDenom'} if(trackalgorithm=='iter0' or trackalgorithm=='ootb'): mineff='0.0' maxeff='1.025' @@ -170,24 +180,28 @@ def do_validation(samples, GlobalTag, trackquality, trackalgorithm, PileUp, samp for sample in samples : templatecfgFile = open(cfg, 'r') templatemacroFile = open(macro, 'r') - newdir=NewRepository+'/'+NewRelease+'/'+NewSelection+'/'+sample + #newdir=NewRepository+'/'+NewRelease+'/'+NewSelection+'/'+sample + if (sampleType == 'FullSim' and PileUp == 'PU' and putype != '') : newdir=NewRepository+'/'+NewRelease+'/'+NewSelection+'_'+putype+'/'+sample + else : newdir=NewRepository+'/'+NewRelease+'/'+NewSelection+'/'+sample cfgFileName=sample+GlobalTag #check if the sample is already done if(os.path.isfile(newdir+'/building.pdf' )!=True): if( Sequence=="harvesting"): harvestedfile='./DQM_V0001_R000000001__' + GlobalTag+ '__' + sample + '__Validation.root' - print harvestedfile elif( Sequence=="preproduction"): harvestedfile='./DQM_V0001_R000000001__' + sample+ '-' + GlobalTag + '_preproduction_312-v1__GEN-SIM-RECO_1.root' elif( Sequence=="comparison_only"): - if (sampleType == 'FullSim' and PileUp == 'noPU') : harvestedfile='./DQM_V0001_R000000001__' + sample+ '__' + NewRelease+ '-' +GlobalTag + '-' + Version + '__DQM.root' - if (sampleType == 'FullSim' and PileUp == 'PU') : harvestedfile='./DQM_V0001_R000000001__' + sample+ '__' + NewRelease+ '-PU_' +GlobalTag + '-' + Version + '__DQM.root' - if (sampleType == 'FastSim' and PileUp == 'noPU') : harvestedfile = './DQM_V0001_R000000001__' + sample+ '__' + NewRelease+ '-' +GlobalTag + '_FastSim-' + Version + '__DQM.root' - if (sampleType == 'FastSim' and PileUp == 'PU') : harvestedfile = './DQM_V0001_R000000001__' + sample+ '__' + NewRelease+ '-PU_' +GlobalTag + '_FastSim-' + Version + '__DQM.root' + if (sampleType == 'FullSim' and PileUp == 'noPU') : harvestedfile='./DQM_V0001_R000000001__' + sample+ '_UP15__' + NewRelease+ '-' +GlobalTag + '-' + Version + '__DQMIO.root' + #if (sampleType == 'FullSim' and PileUp == 'noPU') : harvestedfile='./DQM_V0001_R000000001__' + sample+ '_13__' + NewRelease+ '-' +GlobalTag + '-' + Version + '__DQMIO.root' + if (sampleType == 'FullSim' and PileUp == 'PU') : harvestedfile='./DQM_V0001_R000000001__' + sample+ '_13__' + NewRelease+ '-PU'+putype+'_' +GlobalTag + '-' + Version + '__DQMIO.root' + #if (sampleType == 'FastSim' and PileUp == 'noPU') : harvestedfile = './DQM_V0001_R000000001__' + sample+ '__' + NewRelease+ '-' +GlobalTag + '_FastSim-' + Version + '__DQMIO.root' + if (sampleType == 'FastSim' and PileUp == 'noPU') : harvestedfile = './DQM_V0001_R000000001__' + sample+ '_13__' + NewRelease+ '-' +GlobalTag + '_FastSim-' + Version + '__DQMIO.root' + #if (sampleType == 'FastSim' and PileUp == 'PU') : harvestedfile = './DQM_V0001_R000000001__' + sample+ '__' + NewRelease+ '-PU_' +GlobalTag + '_FastSim-' + Version + '__DQMIO.root' + if (sampleType == 'FastSim' and PileUp == 'PU') : harvestedfile = './DQM_V0001_R000000001__' + sample+ '_13_AVE20__' + NewRelease+ '-PU_' +GlobalTag + '_FastSim-' + Version + '__DQMIO.root' print 'Sample: ', sample, sampleType, PileUp, trackquality, trackalgorithm, '\n' - + if (Sequence != "comparison_only"): print 'Get information from DBS for sample', sample #search the primary dataset @@ -392,31 +406,34 @@ def do_validation(samples, GlobalTag, trackquality, trackalgorithm, PileUp, samp RefSelection+='_'+algo if(quality =='') and (algo==''): RefSelection+='_ootb' + if(putype != ''): + RefSelection+= '_' + RefSelection+= putype do_validation(pileupstartupsamples, StartupTag, quality , algo, PileUp, sampleType, dofastfull) NewRepository = copy.copy(NewRepositoryBase) + '/fastsim' PileUp = 'noPU' sampleType = 'FastSim' - RefSelection=RefStartupTag+'_'+PileUp + RefSelection=FastSimRefStartupTag+'_'+PileUp if( quality !=''): RefSelection+='_'+quality if(algo!=''and not(algo=='ootb' and quality !='')): RefSelection+='_'+algo if(quality =='') and (algo==''): RefSelection+='_ootb' - do_validation(fastsimstartupsamples, StartupTag, quality , algo, PileUp, sampleType, dofastfull) + do_validation(fastsimstartupsamples, FastSimStartupTag, quality , algo, PileUp, sampleType, dofastfull) NewRepository = copy.copy(NewRepositoryBase) + '/fastsim' PileUp = 'PU' sampleType = 'FastSim' - RefSelection=RefStartupTag+'_'+PileUp + RefSelection=FastSimRefStartupTag+'_'+PileUp if( quality !=''): RefSelection+='_'+quality if(algo!=''and not(algo=='ootb' and quality !='')): RefSelection+='_'+algo if(quality =='') and (algo==''): RefSelection+='_ootb' - do_validation(pileupfastsimstartupsamples, StartupTag, quality , algo, PileUp, sampleType, dofastfull) + do_validation(pileupfastsimstartupsamples, FastSimStartupTag, quality , algo, PileUp, sampleType, dofastfull) NewRepository = copy.copy(NewRepositoryBase) + '/fastfull' dofastfull = True @@ -429,7 +446,7 @@ def do_validation(samples, GlobalTag, trackquality, trackalgorithm, PileUp, samp RefSelection+='_'+algo if(quality =='') and (algo==''): RefSelection+='_ootb' - do_validation(fastsimstartupsamples, StartupTag, quality , algo, PileUp, sampleType, dofastfull) + do_validation(fastsimstartupsamples, FastSimStartupTag, quality , algo, PileUp, sampleType, dofastfull) NewRepository = copy.copy(NewRepositoryBase) + '/fastfull' PileUp = 'PU' @@ -442,5 +459,8 @@ def do_validation(samples, GlobalTag, trackquality, trackalgorithm, PileUp, samp RefSelection+='_'+algo if(quality =='') and (algo==''): RefSelection+='_ootb' - do_validation(pileupfastsimstartupsamples, StartupTag, quality , algo, PileUp, sampleType, dofastfull) + if(putype != ''): + RefSelection+= '_' + RefSelection+= putype + do_validation(pileupfastsimstartupsamples, FastSimStartupTag, quality , algo, PileUp, sampleType, dofastfull)