CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
RandomRunSource.RandomRunSource Class Reference
Inheritance diagram for RandomRunSource.RandomRunSource:

Public Member Functions

def insertInto
 
def setRunDistribution
 

Public Attributes

 firstRun
 
 setRunNumber
 

Detailed Description

The class is a Source whose run is chosen randomly.  This initializes identically to a cms.Source
and after being initialized the run number distribution is set by calling 'setRunDistribution'.

Definition at line 3 of file RandomRunSource.py.

Member Function Documentation

def RandomRunSource.RandomRunSource.insertInto (   self,
  parameterSet,
  myname 
)

Definition at line 14 of file RandomRunSource.py.

References edm::ObjectWithDict.type_, FWJobMetadataManager::Data.type_, reco::MuonMETCorrectionData.type_, CutBasedElectronID.type_, OpticalAlignMeasurementInfo.type_, edm::eventsetup::ComponentDescription.type_, l1t::CaloParams::Node.type_, StringCutObjectSelector< TriggerObject >.type_, vector< TOutputCandidateType >.type_, StringCutObjectSelector< reco::LeafCandidate >.type_, MixedGenMEtProducer.type_, StringObjectFunction< reco::PFRecoTauChargedHadron >.type_, StringObjectFunction< reco::Candidate, true >.type_, StringObjectFunction< T >.type_, StringObjectFunction< Object >.type_, StringObjectFunction< PFTau >.type_, StringObjectFunction< reco::Candidate >.type_, StringObjectFunction< reco::PFTau >.type_, StringObjectFunction< T, true >.type_, StringCutObjectSelector< pat::Jet >.type_, StringObjectFunction< reco::RecoTauPiZero >.type_, StringObjectFunction< reco::reco::PFTau >.type_, StringObjectFunction< reco::PFJet >.type_, StringCutObjectSelector< reco::Jet >.type_, StringCutObjectSelector< reco::PFJet >.type_, StringCutObjectSelector< reco::CaloTau >.type_, StringObjectFunction< TInputCandidateType >.type_, StringCutObjectSelector< T1 >.type_, StringCutObjectSelector< reco::Candidate, true >.type_, StringCutObjectSelector< reco::JetID >.type_, StringCutObjectSelector< reco::PFMET >.type_, StringCutObjectSelector< GenParticle >.type_, StringObjectFunction< Object > ss.type_, StringCutObjectSelector< Object > ss.type_, StringCutObjectSelector< reco::GenJet >.type_, StringCutObjectSelector< std::vector< TOutputCandidateType > >.type_, StringCutObjectSelector< reco::CaloJet >.type_, StringCutObjectSelector< reco::Candidate::LorentzVector >.type_, StringCutObjectSelector< T2 >.type_, StringCutObjectSelector< pat::pat::Jet >.type_, StringCutObjectSelector< trigger::TriggerObject >.type_, StringCutObjectSelector< pat::Tau >.type_, StringCutObjectSelector< T, DefaultLazyness >.type_, StringCutObjectSelector< T2, true >.type_, StringCutObjectSelector< reco::Vertex >.type_, StringCutObjectSelector< reco::GenParticle >.type_, StringCutObjectSelector< reco::PFCandidate >.type_, StringCutObjectSelector< pat::TriggerObjectStandAlone >.type_, StringCutObjectSelector< Object >.type_, StringCutObjectSelector< T1, true >.type_, StringCutObjectSelector< pat::pat::Photon >.type_, StringCutObjectSelector< T, Lazy >.type_, StringCutObjectSelector< l1extra::L1MuonParticle >.type_, StringCutObjectSelector< reco::TrackRef, false >.type_, StringCutObjectSelector< reco::reco::Vertex >.type_, StringCutObjectSelector< reco::RecoTauPiZero >.type_, StringCutObjectSelector< reco::Track >.type_, StringCutObjectSelector< reco::PFRecoTauChargedHadron >.type_, StringCutObjectSelector< l1extra::L1EtMissParticle >.type_, StringCutObjectSelector< reco::GenMET >.type_, StringCutObjectSelector< pat::Muon >.type_, StringCutObjectSelector< reco::Muon > vector< MatchStruct >.type_, StringObjectFunction< T, DefaultLazyness >.type_, StringCutObjectSelector< typename Classifier::Categories >.type_, StringCutObjectSelector< T >.type_, StringCutObjectSelector< pat::pat::Electron >.type_, StringCutObjectSelector< reco::MET >.type_, StringCutObjectSelector< reco::Photon >.type_, StringCutObjectSelector< PFTau >.type_, StringCutObjectSelector< pat::Electron >.type_, StringCutObjectSelector< reco::Candidate >.type_, StringCutObjectSelector< pat::pat::Muon >.type_, StringCutObjectSelector< reco::PFTau >.type_, StringCutObjectSelector< MuonPointerPair, true >.type_, StringCutObjectSelector< TInputCandidateType >.type_, StringCutObjectSelector< T, true >.type_, StringCutObjectSelector< reco::BeamSpot >.type_, StringCutObjectSelector< reco::GsfElectron >.type_, StringCutObjectSelector< pat::pat::DiObjectProxy >.type_, StringCutObjectSelector< reco::utils::ClusterTotals >.type_, StringCutObjectSelector< PATObjType >.type_, StringCutObjectSelector< reco::CaloMET >.type_, StringCutObjectSelector< pat::DiObjectProxy, true >.type_, StringCutObjectSelector< reco::Muon, false >.type_, StringCutObjectSelector< reco::Track, true >.type_, StringCutObjectSelector< reco::Muon >.type_, StringCutObjectSelector< reco::CaloMuon, false >.type_, StringObjectFunction< std::vector< TOutputCandidateType > >.type_, MuonRefProducer.type_, TauDQMHistPlotter::cfgEntryProcess.type_, pftools::ParticleFiltrationDecision.type_, reco::TrackingRecHitInfo.type_, AlignableBuilder::LevelInfo.type_, pos::PixelTKFECParameters.type_, pat::TriggerFilter.type_, l1t::BlockHeader.type_, NoProductErrorThrower.type_, pat::TriggerCondition.type_, l1t::CaloSpare.type_, l1t::EtSum.type_, edm::ParentContext.type_, edm::ConsumesInfo.type_, DQMHcalIsoTrackAlCaReco.type_, DBReader.type_, GsfElectronDataAnalyzer.type_, NoBranchErrorThrower.type_, edm::ParameterWildcardBase.type_, MuonTrackCleanerBase.type_, edm::eventsetup::EventSetupRecordKey.type_, edm::AllowedLabelsDescriptionBase.type_, fwlite::internal::DataKey.type_, reco::PUSubMETCandInfo.type_, BinomialInterval.type_, pftools::CandidateWrapper.type_, edm::PileUp.type_, edm::eventsetup::DataKey.type_, OpticalAlignInfo.type_, l1extra::L1EmParticle.type_, l1extra::L1JetParticle.type_, Json::Reader::Token.type_, PFBlockLink.type_, pat::JetCorrFactorsProducer.type_, ParticleReplacerZtautau::MinVisPtCut.type_, Entry.type_, pos::PixelPortCardConfig.type_, edm::ParameterDescriptionBase.type_, edm::Handle< GenericObject >.type_, BeamSpotObjects.type_, L1GctInternHFData.type_, l1extra::L1EtMissParticle.type_, edm::Handle< FWGenericObject >.type_, reco::PFBlockElement.type_, funct::RootIntegrator.type_, L1GctInternHtMiss.type_, reco::BeamSpot.type_, L1GctInternEtSum.type_, L1GctInternJetData.type_, TrackerDpgAnalysis.type_, SiStripConfigDb::Run.type_, ConfigurableHisto.type_, reco::Muon.type_, Mixins._TypedParameterizable.type_(), GsfElectronFakeAnalyzer.type_, Json::Value.type_, edm::IndexIntoFile::IndexIntoFileItrImpl.type_, and Config.SubProcess.type_().

14 
15  def insertInto(self, parameterSet, myname):
16  from random import SystemRandom
17  totalProb = 0.
18  for r,p in self.__dict__['runsAndProbs']:
19  totalProb+=p
20  #this is the same random generator used to set the seeds for the RandomNumberGeneratorService
21  random = SystemRandom()
22  runProb = random.uniform(0,totalProb)
23  print runProb
24  sumProb = 0
25  runNumber = 0
26  for r,p in self.__dict__['runsAndProbs']:
27  sumProb+=p
28  if sumProb >= runProb:
29  runNumber = r
30  break
31  if self.type_() == "PoolSource":
32  self.setRunNumber = cms.untracked.uint32(runNumber)
33  else:
34  #sources that inherit from ConfigurableInputSource use 'firstRun'
35  self.firstRun = cms.untracked.uint32(runNumber)
36  super(RandomRunSource,self).insertInto(parameterSet,myname)
def RandomRunSource.RandomRunSource.setRunDistribution (   self,
  runsAndProbs 
)
Pass a list of tuple pairs, with the first item of the pair a run number
and the second number of the pair a weight.  The class will normalize the
weights so you do not have to.  The pairs will be used to randomly choose what Run
should be assigned to the job.

Definition at line 7 of file RandomRunSource.py.

7 
8  def setRunDistribution(self,runsAndProbs):
9  """Pass a list of tuple pairs, with the first item of the pair a run number
10  and the second number of the pair a weight. The class will normalize the
11  weights so you do not have to. The pairs will be used to randomly choose what Run
12  should be assigned to the job.
13  """
self.__dict__['runsAndProbs']=runsAndProbs

Member Data Documentation

RandomRunSource.RandomRunSource.firstRun

Definition at line 34 of file RandomRunSource.py.

RandomRunSource.RandomRunSource.setRunNumber

Definition at line 31 of file RandomRunSource.py.