Created
April 22, 2024 08:27
-
-
Save giorgiopizz/60cf00bb3f897cf2259cba0f39102cd8 to your computer and use it in GitHub Desktop.
Produce nanoGEN in CMSSW
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Auto generated configuration file | |
# using: | |
# Revision: 1.19 | |
# Source: /local/reps/CMSSW/CMSSW/Configuration/Applications/python/ConfigBuilder.py,v | |
# with command line options: Configuration/GenProduction/python/HIG.py --python_filename HIG_cfg.py --eventcontent NANOAODGEN --customise Configuration/DataProcessing/Utils.addMonitoring --datatier NANOAOD --fileout file:HIG-RunIISummer20UL18wmLHEGEN-01277.root --conditions 106X_upgrade2018_realistic_v4 --beamspot Realistic25ns13TeVEarly2018Collision --geometry DB:Extended --step LHE,GEN,NANOGEN --era Run2_2018 --no_exec --mc -n 10 | |
import FWCore.ParameterSet.Config as cms | |
from FWCore.ParameterSet.VarParsing import VarParsing | |
options = VarParsing ('analysis') | |
options.register('jobNum', 0, VarParsing.multiplicity.singleton,VarParsing.varType.int,"jobNum") | |
options.register('nEvents', 0, VarParsing.multiplicity.singleton,VarParsing.varType.int,"nEvents") | |
options.register('nThreads', 1, VarParsing.multiplicity.singleton,VarParsing.varType.int,"nThreads") | |
options.register('gridpack','./Zjj_ewk_dim6_all_slc7_amd64_gcc700_CMSSW_10_6_19_tarball.tar.xz',VarParsing.multiplicity.singleton,VarParsing.varType.string,"gridpack"), | |
options.parseArguments() | |
from Configuration.Eras.Era_Run2_2018_cff import Run2_2018 | |
process = cms.Process('NANOGEN',Run2_2018) | |
# 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.EventContent_cff') | |
process.load('SimGeneral.MixingModule.mixNoPU_cfi') | |
process.load('Configuration.StandardSequences.GeometryRecoDB_cff') | |
process.load('Configuration.StandardSequences.MagneticField_cff') | |
process.load('Configuration.StandardSequences.Generator_cff') | |
process.load('IOMC.EventVertexGenerators.VtxSmearedRealistic25ns13TeVEarly2018Collision_cfi') | |
process.load('GeneratorInterface.Core.genFilterSummary_cff') | |
process.load('PhysicsTools.NanoAOD.nanogen_cff') | |
process.load('Configuration.StandardSequences.EndOfProcess_cff') | |
process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') | |
process.maxEvents = cms.untracked.PSet( | |
input = cms.untracked.int32(options.nEvents) | |
) | |
# Input source | |
process.source = cms.Source("EmptySource", | |
firstLuminosityBlock = cms.untracked.uint32(options.jobNum), | |
numberEventsInLuminosityBlock = cms.untracked.uint32(options.nEvents) | |
) | |
process.options = cms.untracked.PSet( | |
) | |
process.options.numberOfThreads = cms.untracked.uint32(options.nThreads) | |
process.options.numberOfStreams = cms.untracked.uint32(options.nThreads) | |
process.options.wantSummary = cms.untracked.bool(True) | |
# Production Info | |
process.configurationMetadata = cms.untracked.PSet( | |
annotation = cms.untracked.string('Configuration/GenProduction/python/HIG.py nevts:10'), | |
name = cms.untracked.string('Applications'), | |
version = cms.untracked.string('$Revision: 1.19 $') | |
) | |
# Output definition | |
process.NANOAODGENoutput = cms.OutputModule("NanoAODOutputModule", | |
SelectEvents = cms.untracked.PSet( | |
SelectEvents = cms.vstring('generation_step') | |
), | |
compressionAlgorithm = cms.untracked.string('LZMA'), | |
compressionLevel = cms.untracked.int32(9), | |
dataset = cms.untracked.PSet( | |
dataTier = cms.untracked.string('NANOAOD'), | |
filterName = cms.untracked.string('') | |
), | |
fileName = cms.untracked.string('file:nanoAOD.root'), | |
outputCommands = process.NANOAODGENEventContent.outputCommands | |
) | |
# Additional output definition | |
# Other statements | |
process.genstepfilter.triggerConditions=cms.vstring("generation_step") | |
from Configuration.AlCa.GlobalTag import GlobalTag | |
process.GlobalTag = GlobalTag(process.GlobalTag, '106X_upgrade2018_realistic_v4', '') | |
from Configuration.Generator.Pythia8CommonSettings_cfi import pythia8CommonSettingsBlock | |
from Configuration.Generator.MCTunes2017.PythiaCP5Settings_cfi import pythia8CP5SettingsBlock | |
from Configuration.Generator.PSweightsPythia.PythiaPSweightsSettings_cfi import pythia8PSweightsSettingsBlock | |
process.generator = cms.EDFilter("Pythia8ConcurrentHadronizerFilter", | |
PythiaParameters = cms.PSet( | |
pythia8CommonSettingsBlock, | |
pythia8CP5SettingsBlock, | |
pythia8PSweightsSettingsBlock, | |
processParameters = cms.vstring( | |
'SpaceShower:dipoleRecoil = on' | |
), | |
parameterSets = cms.vstring( | |
'pythia8CommonSettings', | |
'pythia8CP5Settings', | |
'pythia8PSweightsSettings', | |
'processParameters' | |
), | |
), | |
comEnergy = cms.double(13000.0), | |
filterEfficiency = cms.untracked.double(1.0), | |
maxEventsToPrint = cms.untracked.int32(1), | |
pythiaHepMCVerbosity = cms.untracked.bool(False), | |
pythiaPylistVerbosity = cms.untracked.int32(1) | |
) | |
import os,random | |
process.externalLHEProducer = cms.EDProducer("ExternalLHEProducer", | |
#args = cms.vstring('/gwpool/users/gpizzati/gp_nlo/VBF_W-Z_slc7_amd64_gcc700_CMSSW_10_6_39_VBF_Z_mm_13TeV.tgz'), | |
#args = cms.vstring(os.environ['PWD']+"/" + options.inputGridpack), | |
args = cms.vstring(os.environ['PWD']+"/" + options.gridpack), | |
nEvents = cms.untracked.uint32(options.nEvents), | |
#generateConcurrently = cms.untracked.bool(True), | |
numberOfParameters = cms.uint32(1), | |
outputFile = cms.string('cmsgrid_final.lhe'), | |
scriptName = cms.FileInPath('GeneratorInterface/LHEInterface/data/run_generic_tarball_cvmfs.sh') | |
) | |
random.seed = os.urandom(1000) | |
process.RandomNumberGeneratorService.externalLHEProducer.initialSeed = random.randint(0,999999999) | |
process.RandomNumberGeneratorService.generator.initialSeed = random.randint(0,999999999) | |
process.ProductionFilterSequence = cms.Sequence(process.generator) | |
# Path and EndPath definitions | |
process.lhe_step = cms.Path(process.externalLHEProducer) | |
process.generation_step = cms.Path(process.pgen) | |
process.nanoAOD_step = cms.Path(process.nanogenSequence) | |
process.genfiltersummary_step = cms.EndPath(process.genFilterSummary) | |
process.endjob_step = cms.EndPath(process.endOfProcess) | |
process.NANOAODGENoutput_step = cms.EndPath(process.NANOAODGENoutput) | |
# Schedule definition | |
process.schedule = cms.Schedule(process.lhe_step,process.generation_step,process.genfiltersummary_step,process.nanoAOD_step,process.endjob_step,process.NANOAODGENoutput_step) | |
from PhysicsTools.PatAlgos.tools.helpers import associatePatAlgosToolsTask | |
associatePatAlgosToolsTask(process) | |
# filter all path with the production filter sequence | |
for path in process.paths: | |
if path in ['lhe_step']: continue | |
getattr(process,path).insert(0, process.ProductionFilterSequence) | |
# customisation of the process. | |
# Automatic addition of the customisation function from PhysicsTools.NanoAOD.nanogen_cff | |
from PhysicsTools.NanoAOD.nanogen_cff import customizeNanoGEN | |
#call to customisation function customizeNanoGEN imported from PhysicsTools.NanoAOD.nanogen_cff | |
process = customizeNanoGEN(process) | |
# Automatic addition of the customisation function from Configuration.DataProcessing.Utils | |
from Configuration.DataProcessing.Utils import addMonitoring | |
#call to customisation function addMonitoring imported from Configuration.DataProcessing.Utils | |
process = addMonitoring(process) | |
# End of customisation functions | |
# Customisation from command line | |
# Add early deletion of temporary data products to reduce peak memory need | |
from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete | |
process = customiseEarlyDelete(process) | |
# End adding early deletion |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
set -e | |
BASE=$PWD | |
RELEASE_BASE=$CMSSW_BASE | |
export SCRAM_ARCH=slc7_amd64_gcc700 | |
source /cvmfs/cms.cern.ch/cmsset_default.sh | |
cd $RELEASE_BASE | |
eval `scram runtime -sh` | |
cd $BASE | |
splits=($(echo $4 | tr "=" " ")) | |
gp=${splits[1]} | |
echo $gp | |
splits=($(echo $5 | tr "=" " ")) | |
config=${splits[1]} | |
source /cvmfs/cms.cern.ch/cmsset_default.sh | |
cmsrel CMSSW_10_6_30_patch1 | |
cd CMSSW_10_6_30_patch1/src; cmsenv; cd - | |
echo $CMSSW_BASE | |
xrdcp -f root://eoscms.cern.ch//store/group/offcomp_upgrade-sw/gpizzati/gps/${gp} . | |
ls ./${gp} | |
#tar -xzvf CMSSW_nano.tgz | |
echo "cmsRun -e -j FrameworkJobReport.xml ${config} jobNum="$1" "$2" "$3" gridpack="$gp" " | |
cmsRun -e -j FrameworkJobReport.xml ${config} jobNum=$1 $2 $3 gridpack=${gp} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment