Skip to content

Commit

Permalink
working again
Browse files Browse the repository at this point in the history
  • Loading branch information
lgray committed Sep 2, 2016
1 parent 5f77fa4 commit 975fed1
Show file tree
Hide file tree
Showing 25 changed files with 279 additions and 286 deletions.
3 changes: 3 additions & 0 deletions IOMC/RandomEngine/python/IOMC_cff.py
Expand Up @@ -177,3 +177,6 @@
eras.phase2_muon.toModify(RandomNumberGeneratorService, simMuonME0Digis = cms.PSet(
initialSeed = cms.untracked.uint32(1234567),
engineName = cms.untracked.string('HepJamesRandom')) )

eras.phase2_tracker.toModify(RandomNumberGeneratorService,
trackTimeValueMapProducer = cms.PSet(initialSeed = cms.untracked.uint32(1234567), engineName = cms.untracked.string('HepJamesRandom') ) )
16 changes: 9 additions & 7 deletions RecoParticleFlow/Configuration/python/RecoParticleFlow_cff.py
Expand Up @@ -60,14 +60,16 @@
_phase2_hgcal_particleFlowReco.replace( particleFlowTmpSeq, cms.Sequence( particleFlowTmpBarrel * particleFlowTmp ) )

eras.phase2_hgcal.toModify( quickTrackAssociatorByHits,
pixelSimLinkSrc = cms.InputTag("simSiPixelDigis","Pixel"),
stripSimLinkSrc = cms.InputTag("simSiPixelDigis","Tracker")
)
pixelSimLinkSrc = cms.InputTag("simSiPixelDigis","Pixel"),
stripSimLinkSrc = cms.InputTag("simSiPixelDigis","Tracker")
)

eras.phase2_hgcal.toModify( tpClusterProducer,
pixelSimLinkSrc = cms.InputTag("simSiPixelDigis", "Pixel"),
phase2OTSimLinkSrc = cms.InputTag("simSiPixelDigis","Tracker")
)

pixelSimLinkSrc = cms.InputTag("simSiPixelDigis", "Pixel"),
phase2OTSimLinkSrc = cms.InputTag("simSiPixelDigis","Tracker")
)
eras.phase2_hgcal.toReplaceWith( particleFlowTmp, _phase2_hgcal_particleFlowTmp )
eras.phase2_hgcal.toReplaceWith( particleFlowReco, _phase2_hgcal_particleFlowReco )



221 changes: 0 additions & 221 deletions RecoParticleFlow/PFSimProducer/plugins/EcalBarrelClusterFastTimer.cc

This file was deleted.

16 changes: 16 additions & 0 deletions RecoVertex/Configuration/python/RecoVertex_EventContent_cff.py
Expand Up @@ -27,3 +27,19 @@
'keep *_inclusiveSecondaryVertices_*_*')
)

_phase2_tktiming_RecoVertexEventContent = [ 'keep *_offlinePrimaryVertices1D__*',
'keep *_offlinePrimaryVertices4D__*',
'keep *_offlinePrimaryVertices1DWithBS__*',
'keep *_offlinePrimaryVertices4DWithBS__*',
'keep *_trackTimeValueMapProducer_*_*' ]

from Configuration.StandardSequences.Eras import eras
def _phase2_tktiming_AddNewContent(mod):
temp = mod.outputCommands + _phase2_tktiming_RecoVertexEventContent
eras.phase2_tracker.toModify( mod, outputCommands = temp )

_phase2_tktiming_AddNewContent(RecoVertexFEVT)
_phase2_tktiming_AddNewContent(RecoVertexRECO)
_phase2_tktiming_AddNewContent(RecoVertexAOD)


57 changes: 49 additions & 8 deletions RecoVertex/Configuration/python/RecoVertex_cff.py
Expand Up @@ -23,11 +23,52 @@


vertexreco = cms.Sequence(unsortedOfflinePrimaryVertices*
trackWithVertexRefSelectorBeforeSorting*
trackRefsForJetsBeforeSorting*
caloJetsForTrk *
offlinePrimaryVertices*
offlinePrimaryVerticesWithBS*
generalV0Candidates*
inclusiveVertexing
)
trackWithVertexRefSelectorBeforeSorting*
trackRefsForJetsBeforeSorting*
caloJetsForTrk *
offlinePrimaryVertices*
offlinePrimaryVerticesWithBS*
generalV0Candidates*
inclusiveVertexing
)

#timing
unsortedOfflinePrimaryVertices1D = unsortedOfflinePrimaryVertices.clone()
unsortedOfflinePrimaryVertices1D.TkFilterParameters.minPt = cms.double(1.0)
offlinePrimaryVertices1D=sortedPrimaryVertices.clone(vertices="unsortedOfflinePrimaryVertices1D", particles="trackRefsForJetsBeforeSorting")
offlinePrimaryVertices1DWithBS=sortedPrimaryVertices.clone(vertices="unsortedOfflinePrimaryVertices1D:WithBS", particles="trackRefsForJetsBeforeSorting")
DA2DParameters.TkDAClusParameters.verbose = cms.untracked.bool(False)
unsortedOfflinePrimaryVertices4D = unsortedOfflinePrimaryVertices.clone( verbose = cms.untracked.bool(False),
TkClusParameters = DA2DParameters )
unsortedOfflinePrimaryVertices4D.TkFilterParameters.minPt = cms.double(1.0)
unsortedOfflinePrimaryVertices4D.TrackTimesLabel = cms.InputTag("trackTimeValueMapProducer:generalTracksConfigurableFlatResolutionModel")
unsortedOfflinePrimaryVertices4D.TrackTimeResosLabel = cms.InputTag("trackTimeValueMapProducer:generalTracksConfigurableFlatResolutionModelResolution")
offlinePrimaryVertices4D=sortedPrimaryVertices.clone(vertices="unsortedOfflinePrimaryVertices4D", particles="trackRefsForJetsBeforeSorting")
offlinePrimaryVertices4DWithBS=sortedPrimaryVertices.clone(vertices="unsortedOfflinePrimaryVertices4D:WithBS", particles="trackRefsForJetsBeforeSorting")

from SimTracker.TrackerHitAssociation.tpClusterProducer_cfi import *
from SimTracker.TrackAssociatorProducers.quickTrackAssociatorByHits_cfi import *
from SimTracker.TrackAssociation.trackTimeValueMapProducer_cfi import *
from Configuration.StandardSequences.Eras import eras
_phase2_tktiming_vertexreco = cms.Sequence( vertexreco.copy() *
tpClusterProducer *
quickTrackAssociatorByHits *
trackTimeValueMapProducer *
unsortedOfflinePrimaryVertices1D *
offlinePrimaryVertices1D *
offlinePrimaryVertices1DWithBS *
unsortedOfflinePrimaryVertices4D *
offlinePrimaryVertices4D *
offlinePrimaryVertices4DWithBS
)

eras.phase2_tracker.toModify( quickTrackAssociatorByHits,
pixelSimLinkSrc = cms.InputTag("simSiPixelDigis","Pixel"),
stripSimLinkSrc = cms.InputTag("simSiPixelDigis","Tracker")
)

eras.phase2_tracker.toModify( tpClusterProducer,
pixelSimLinkSrc = cms.InputTag("simSiPixelDigis", "Pixel"),
phase2OTSimLinkSrc = cms.InputTag("simSiPixelDigis","Tracker")
)
eras.phase2_tracker.toReplaceWith(vertexreco, _phase2_tktiming_vertexreco)
38 changes: 12 additions & 26 deletions RecoVertex/PrimaryVertexProducer/plugins/PrimaryVertexProducer.cc
Expand Up @@ -156,7 +156,17 @@ PrimaryVertexProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup
// interface RECO tracks to vertex reconstruction
edm::ESHandle<TransientTrackBuilder> theB;
iSetup.get<TransientTrackRecord>().get("TransientTrackBuilder",theB);
std::vector<reco::TransientTrack> t_tks = (*theB).build(tks, beamSpot);
std::vector<reco::TransientTrack> t_tks;

if( f4D ) {
edm::Handle<edm::ValueMap<float> > trackTimesH;
edm::Handle<edm::ValueMap<float> > trackTimeResosH;
iEvent.getByToken(trkTimesToken, trackTimesH);
iEvent.getByToken(trkTimeResosToken, trackTimeResosH);
t_tks = (*theB).build(tks, beamSpot, trackTimesH, trackTimeResosH);
} else {
t_tks = (*theB).build(tks, beamSpot);
}
if(fVerbose) {std::cout << "RecoVertex/PrimaryVertexProducer"
<< "Found: " << t_tks.size() << " reconstructed tracks" << "\n";
}
Expand All @@ -165,30 +175,6 @@ PrimaryVertexProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup
// select tracks
std::vector<reco::TransientTrack> && seltks = theTrackFilter->select( t_tks );

if( f4D ) {
edm::Handle<edm::ValueMap<float> > trackTimesH;
edm::Handle<edm::ValueMap<float> > trackTimeResosH;

iEvent.getByToken(trkTimesToken, trackTimesH);
iEvent.getByToken(trkTimeResosToken, trackTimeResosH);
const auto& trackTimes = *trackTimesH;
const auto& trackTimeResos = *trackTimeResosH;

for( auto& seltk : seltks ) {
auto temp = seltk.trackBaseRef();
double time = trackTimes[temp];
double timeReso = trackTimeResos[temp];
timeReso = ( timeReso > 1e-6 ? timeReso : 0.170 ); // make the error much larger than the BS time width
if( edm::isNotFinite(time) ) {
time = 0.0;
timeReso = 1.0;
}
reco::TransientTrack temptt(temp.castTo<reco::TrackRef>(),time,timeReso,
theB->field(),theB->trackingGeometry());
seltk.swap(temptt);
}
}

// clusterize tracks in Z
std::vector< std::vector<reco::TransientTrack> > && clusters = theTrackClusterizer->clusterize(seltks);

Expand Down Expand Up @@ -226,7 +212,7 @@ PrimaryVertexProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup
if( algorithm->useBeamConstraint && validBS &&((*iclus).size()>1) ){

v = algorithm->fitter->vertex(*iclus, beamSpot);
if( f4D ) {
if( v.isValid() ) {
auto err = v.positionError().matrix4D();
Expand Down

0 comments on commit 975fed1

Please sign in to comment.