Difference: SWGuideHeavyIonEvtMixing (3 vs. 4)

Revision 42009-10-28 - YetkinYilmaz

Line: 1 to 1
 
META TOPICPARENT name="SWGuideHIDocReview09"

Mixing Signal Events into Heavy Ion Background

Added:
>
>
Complete: 5
 
Line: 12 to 13
 

Using cmsDriver.py

Changed:
<
<
cmsDriver.py [Generator cfi - with label = hiSignal ] --himix --no_exec --scenario HeavyIons -s [Sequences, at least GEN,SIM] -n [Number of events] --conditions [Conditions with Tag] --datatier [Data Tier] --eventcontent [Event Content] --filein=[Input file LFN, or PFL with prefix] --fileout=[Output file]

Example (Mixing GammaJets):

>
>
You can create a configuration with the following command:
 

Changed:
<
<
cmsDriver.py Pyquen_GammaJet_pt20_4TeV.cfi --himix --no_exec --scenario HeavyIons -s GEN,SIM,DIGI,L1,DIGI2RAW,RAW2DIGI,RECO -n 1 --conditions FrontierConditions_GlobalTag,MC_31X_V8::All --datatier 'GEN-SIM-RAW-RECO' --eventcontent FEVTDEBUG --filein=/store/relval/CMSSW_3_3_0_pre3/RelValHydjetQ_MinBias_4TeV/GEN-SIM-RAW/MC_31X_V8-v1/0015/DC571B73-43A1-DE11-BD0C-000423D98804.root --fileout=gammajet20_MIX_RECO.root
>
>
cmsDriver.py Pyquen_DiJet_pt80to120_4TeV_cfi.py --himix --scenario HeavyIons -s GEN:hiSignal,SIM,DIGI,L1,DIGI2RAW,RAW2DIGI,RECO --conditions FrontierConditions_GlobalTag,MC_31X_V9::All --datatier 'GEN-SIM-RAW-RECO' --eventcontent=FEVTDEBUG --processName 'HISIGNAL' --filein=inputfile.root --fileout=outputfile.root -n 1 --no_exec

This configuration mixes dijets into heavy ion background, and runs up to RECO. The particularities are:

  • The input generator cfi has to be defined with label "hiSignal", rather than "generator".
  • The GEN sequence must be run with the option "hiSignal", by typing it as "GEN:hiSignal" among sequences.
  • The option "--himix" must be used.
  • Scenario "HeavyIons" must be specified.
  • A process name (of your choice) has to be specified in order not to clash with previous processes that ran on the events.

You can modify all other parameters as you like. You can look at SWGuidePyReleaseValidationOptions for cmsDriver.py details.

 

Writing a custom configuration

Changed:
<
<
  • Create a PoolSource that opens an input (heavy ion background) file.
>
>
  • Create a PoolSource that opens an input (heavy ion background) file. Make sure you drop the previously produced DIGI, RAW etc. of the background event. You need only the GEN and SIM info from this file:

process.source = cms.Source("PoolSource",
    fileNames = cms.untracked.vstring('inputfile.root'),
    inputCommands = cms.untracked.vstring('drop *',
        'keep *_generator_*_*',
        'keep *_g4SimHits_*_*'),
    dropDescendantsOfDroppedBranches = cms.untracked.bool(False)
)
 
  • Load a generator particularly configured for mixing:

Line: 35 to 64
 process.hiSignal = cms.EDFilter('PyquenProducer',....)
Changed:
<
<
  • Load the standard sequences for your job, and then add the extra sequences needed for hi-mixing:
>
>
  • Load the standard sequences for your job, including the standard GEN, SIM, DIGI stuff:

process.load('Configuration/StandardSequences/Services_cff')
process.load('Configuration/StandardSequences/Generator_cff')
process.load('Configuration/StandardSequences/Sim_cff')
process.load('Configuration/StandardSequences/Digi_cff')

and then add the extra sequences needed for hi-mixing:

 
process.load('Configuration/StandardSequences/HiEventMixing_cff')
process.load('SimGeneral/MixingModule/himixGEN_cff')

Line: 54 to 92
 
Changed:
<
<

Step by step Instructions

Generation

Vertex

Simulation

Mix

GenParticles

TrackingParticles

>
>

Other possibilities you may need

Mixing in Gen-Level only

  • Load only standard GEN sequences.
  • For mixing, use mixGenNoPU from HiEventMixing, by not loading; but importing.
 
Added:
>
>
from SimGeneral.MixingModule.HiEventMixing_cff import *
process.mix = mixGenHI
...
process.pmix = cms.Path(process.mix)
 
Added:
>
>

Running NoPileUp on hiSignal

 
Added:
>
>
You may want to take the already simulated signal events, which are mixed into HI background reconstructed, and run RECO on them without the heavy ion background. It is possible to save the RECO output of both mixed and signal-only event in the same file. Heere are the instructions to do it:
 
Changed:
<
<

Production Instructions

>
>
  • For now, you need to check out the HEAD of SimGeneral/MixingModule from the CVS.
  • Create a PoolSource that drops the DIGI, RAW, and local RECO of the input file.
  • Load only standard GEN, SIM, DIGI sequences.
  • For mixing, load HiEventMixing and change parameters to use only the signal:
 
Changed:
<
<

Instructions for running mixing in pre-releases with CRAB jobs at MIT

>
>

 
Changed:
<
<
CRAB can only recognize the official OSG installations at a Tier 2 site. In order to run with a prerelease, one needs to use a custom script. The instructions are in CmsafUserGuide
>
>
process.load("SimGeneral.MixingModule.HiEventMixing_cff") process.mix.srcGEN = ["hiSignal"] process.mix.srcSIM = ["hSignalG4SimHits"]
 
Added:
>
>
 
Changed:
<
<

Setup of the working area

>
>
  • Run standard DIGI, L1, RAW, RawToDigi sequences.
 
Changed:
<
<
Here are instruction for setting up a CMSSW project area that is capable to run the event embedding configurations. For detailed help on the steps involved, please consult the WorkBook, or MIT Tier-2/3 user guide for running locally at MIT.
>
>
If you want to keep both Mixed ans Signal-only reconstruction objects, then you need new names for the Signal-only RECO objects. This is also easy:
 
Changed:
<
<

CMSSW_3_3_X

>
>
  • Load standard RECO for heavy ions, but AFTER that, load the extra reco for hiSignal.
 
Deleted:
<
<
  • Setup your CMSSW area and environment
  • Setup you CVSROOT and get your kerberos 5 token
  • Execute the following:
 

Changed:
<
<
cvs co UserCode/CmsHi/Utilities/scripts/setup33X.sh ./UserCode/CmsHi/Utilities/scripts/setup33X.sh
>
>
process.load('Configuration/StandardSequences/ReconstructionHeavyIons_cff') process.load('RecoHI.Configuration.Reconstruction_hiSignal_cff')
 
Changed:
<
<

Running with Crab

>
>
This will modify the sequences defined in the standard configuration.

  • Run the standard reco sequence:
 
Changed:
<
<
>
>
process.reconstruction_step = cms.Path(process.reconstructionHeavyIons)
 

Configuration Examples

Changed:
<
<
UserCode/CmsHi/Utilities/test/pyquen_gammajet_pt20.py
>
>
http://cmssw.cvs.cern.ch/cgi-bin/cmssw.cgi/UserCode/CmsHi/Utilities/scripts/mixDiJet_reco.sh?view=markup
 

Related Links

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback