-
Notifications
You must be signed in to change notification settings - Fork 3
Refit
You will need the Producer package for this. Find notes here:
https://github.com/cms-mual/Producers/wiki/Producing-a-Sample/
Warning: ALCARECO not sufficent
To Be Added: Instructions for setting up directory and necessary files (CRAB submission script, python config)
from CRABClient.UserUtilities import config
config = config()
config.section_("General")
config.General.requestName = 'ZMM_10_1_0_pre3_ideal_9M_2018_realistic_bad_realistic_input'
config.General.workArea = 'crab_projects'
config.General.transferLogs = True
config.section_("JobType")
config.JobType.pluginName = 'Analysis'
config.JobType.psetName = 'refit_realistic_v3_MuAl_cfg.py'
config.JobType.outputFiles = ['output.root']
#config.JobType.inputFiles = ['Geometries/muonGeometry_IDEAL_AllZeroes.Ape6x6.StdTags.746p3.DBv2.db','Geometries/inertGlobalPositionRcd.StdTags.746p3.DBv2.db']
#uncomment if you need to include custom dbs
config.section_("Data")
config.Data.inputDataset = '/ZMM_10_1_0_pre3_ideal_9M_2018_realisitic_2018_bad_step1/rymuelle-crab_ZMM_10_1_0_pre3_ideal_9M_2018_realistic_bad_step2_v2_full_reco_v2-705ec9a5babc0fb1114dc28330738940/USER'
config.Data.inputDBS = 'phys03' # global if not produced by a user in our group, check DAS
config.Data.splitting = 'FileBased'
config.Data.unitsPerJob = 10
config.Data.outLFNDirBase = '/store/group/alca_muonalign/ryan/ZMM_10_1_0_pre3_ideal_9M_2018_realistic_bad_realistic_input'**
config.Data.publication = False
config.section_("Site")
config.Site.storageSite = 'T2_CH_CERN'from CRABClient.UserUtilities import config
config = config()
config.section_("General")
config.General.requestName = 'MuAlRefit_data_297099-300817_Bv1_ReReco'
config.General.workArea = 'crab_projects'
config.General.transferLogs = True
config.section_("JobType")
config.JobType.pluginName = 'Analysis'
config.JobType.psetName = 'refit_ideal_MuAl_cfg.py'
config.JobType.outputFiles = ['output.root']
#6DOF
config.JobType.inputFiles = ['Geometries/data_DT-1100-111111_2017UL_IOV1_CMSSW105_JSON-297099-300817_dataRun2_MuAl_v2_01.db',
'Geometries/data_CSC-1100-110001_2017UL_IOV1_CMSSW105_JSON-297099-300817_dataRun2_MuAl_v1_01.db',
'Geometries/GPR_Apr26_2019_SW1060_GTRun2_TrAl2017_IOV1_dL4_iter1.db',
'Geometries/APEs_COV_t2_DT_6DOF_2017Data_ReReco_IOV1.db']
config.JobType.allowUndistributedCMSSW = True
config.section_("Data")
config.Data.inputDataset = '/SingleMuon/Run2017B-ZMu-17Nov2017-v1/RAW-RECO'
config.Data.inputDBS = 'global' # global`
config.Data.splitting = 'LumiBased'
config.Data.unitsPerJob = 20
config.Data.lumiMask = 'Geometries/Cert_297099-300817_13TeV_EOY2017ReReco_Collisions17_JSON_MuonPhys.txt'
config.Data.outLFNDirBase = '/store/group/alca_muonalign/ryan/MuAlRefit_data_297099-300817_Bv1_ReReco'
config.Data.publication = True
config.section_("Site")
config.Site.storageSite = 'T2_CH_CERN'Always check:
| Argument | Comment |
|---|---|
config.Data.outLFNDirBase |
Where are you saving this? |
config.Data.unitsPerJob |
Are the jobs to small or large memory usage wise? |
config.Data.splitting |
Is it data or MC? |
config.Data.inputDBS |
Where is the input data located? Check DAS. |
config.Data.inputDataset |
What is the input data? |
config.JobType.inputFiles |
Are you supplying user input? |
config.JobType.psetName |
What config are you using? |
config.General.requestName |
Is your name clear? |
config.Data.lumiMask |
Are you using the right Lumimask for data? |
JSON for 2017 here.
All JSON here.
check:
process.GlobalTag.globaltag = "101X_upgrade2018_realistic_v6" #! GT Here
#...several lines later...
#New Tracker geometry from GT in this case
process.GlobalTag.toGet = cms.VPSet(
###### starts customization of tracker part
cms.PSet(record = cms.string("TrackerAlignmentRcd"),
tag = cms.string("TrackerAlignment_MP_Run2016B_v2"),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
),
cms.PSet(record = cms.string("TrackerAlignmentErrorExtendedRcd"),
tag = cms.string("TrackerAlignmentExtendedErrors_MP_Run2016B"),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
),
cms.PSet(record = cms.string("SiPixelTemplateDBObjectRcd"),
tag = cms.string("SiPixelTemplateDBObject_38T_2016_v1_hltvalidation"),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
)
)
#Muon geometry (CRAB copies take the files location in the crab.py file and copy it where the cmsRun command is executed)
process.muonDtAlignment = cms.ESSource("PoolDBESSource", CondDBSetup,
connect = cms.string('sqlite_file:muonGeometry_IDEAL_AllZeroes.Ape6x6.StdTags.746p3.DBv2.db'),
toGet = cms.VPSet(cms.PSet(record = cms.string("DTAlignmentRcd"), tag = cms.string("DTAlignmentRcd")))
)
process.es_prefer_muonDtAlignment = cms.ESPrefer("PoolDBESSource","muonDtAlignment")
process.muonCscAlignment = cms.ESSource("PoolDBESSource", CondDBSetup,
connect = cms.string('sqlite_file:muonGeometry_IDEAL_AllZeroes.Ape6x6.StdTags.746p3.DBv2.db'),
toGet = cms.VPSet(cms.PSet(record = cms.string("CSCAlignmentRcd"), tag = cms.string("CSCAlignmentRcd")))
)
process.es_prefer_muonCscAlignment = cms.ESPrefer("PoolDBESSource","muonCscAlignment")
process.globalPosition = cms.ESSource("PoolDBESSource", CondDBSetup,
connect = cms.string('sqlite_file:inertGlobalPositionRcd.StdTags.746p3.DBv2.db'),
toGet = cms.VPSet(cms.PSet(record = cms.string("GlobalPositionRcd"), tag = cms.string("inertGlobalPositionRcd")))
)
process.es_prefer_globalPosition = cms.ESPrefer("PoolDBESSource","globalPosition")
# Asymptotic Muon APEs
process.GlobalTag.toGet = cms.VPSet(
cms.PSet(record = cms.string("CSCAlignmentErrorExtendedRcd"),
tag = cms.string("MuonCSCAPEObjectsExtended_v0_mc"),
connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS')
),
cms.PSet(record = cms.string("DTAlignmentErrorExtendedRcd"),
tag = cms.string("DTAlignmentErrorExtendedRcd"),
connect = cms.string('sqlite_file:APEs_DT_Data_AllContributions_AllTypesOfApes_3DOF.db')
)
)Note: comment out if you just want to use db as found in Global Tag. Only supply db for custom refits.
Ask yourself: What GT was used to produce the sample? Not sure what GT to use? Check here: https://github.com/cms-sw/cmssw/blob/master/Configuration/AlCa/python/autoCond.py
Be sure to select the appropriate CMSSW version.
Either use 'frontier://FrontierProd/CMS_CONDITIONS' or sqlite: 'sqlite_file:muonGeometry_IDEAL_AllZeroes.Ape6x6.StdTags.746p3.DBv2.db'). if sqlite, be sure to supply db in crab config.
Test run cfg locally before crab submission if in doubt.
Supply file here:
process = cms.Process("MUALREFIT")
process.source = cms.Source("PoolSource",
fileNames = cms.untracked.vstring('file:out_RECO_dropped.root')
) cmsenv
voms-proxy-init -voms cms
dasgoclient -query="dataset=/*ZMM_10_1_0_pre3_ideal_9M_2018_d*/*/* instance=prod/phys03"For data use RAW-RECO. e.g. /SingleMuon/Run2018A-ZMu-PromptReco-v2/RAW-RECO
Didn't find your sample? What instance is the sample in? Check the online DAS search feature if you are really not sure.
cmsenv
source /cvmfs/cms.cern.ch/crab3/crab.sh
voms-proxy-init -voms cms
crab submit -c crab_MC_realistic_v3.py --dryrun
crab proceedWhy dryrun? It will tell you if your job will work. If you are confident, leave it out to submit faster.
Using tcsh?
source /cvmfs/cms.cern.ch/crab3/crab.csh