la catena di simulazione con orca 7 (adattamento della presentazione di stephan wynhoff al tracker...
TRANSCRIPT
La catena di simulazionecon ORCA 7
(Adattamento della presentazione di
Stephan Wynhoff al Tracker Tutorial, 03/03/03)
-2-Torino, 14-16 Aprile 2003
OutlineOutline
From Ntuple event file to fully digitised events
● Generation: cmkin (PYTHIA)● Simulation: cmsim ● Hitformatting: writeHits● Digitisation: writeAllDigis● “Winter Mode”
-3-Torino, 14-16 Aprile 2003
CMSIM
FZsignal
HEPEVTNtuple
ORCA 7
FZsignal
FZminbias
ROOT/IOSimHits/minbias
ROOT/IOSimHits/signal
ROOT/IODigis
Ntuple
G3Reader SimReader RecReader
MC generator
CMKIN
Production
Production User
The Analysis Chain
SimulationGeneration
Hitformatting Digitisation Analysis
-5-Torino, 14-16 Aprile 2003
CMKIN
● Interface to Pythia/Herwig/Isajet● Cfr. /afs/cern.ch/cms/cmsim/cmk002/examples/00README
● Will become and independent project (= expect changes)
> cmkin cmk002> cp –pr $CMK_EXAMPLES .> cd examples/make_ntpl_job> kine_make_ntpl_pyt.com
● Executable is created in $SCRATCH/kine_make_ntpl_pyt.exe
● Sample batch job in kine_make_ntpl_pyt.run
-6-Torino, 14-16 Aprile 2003
CMKIN: Action
● Cards for various processes (mostly with PYTHIA) on the production page:
http://cmsdoc.cern.ch/cms/production/www/html/general/
● Take bt_h300_ZZ2mu2ele_Id_238.txt and edit it
(cfr. ~namapane/public/Tutorial/day2/cmkin/)
● Run!$SCRATCH/kine_make_ntpl_pyt.exe < bt_h300_ZZ2mu2ele_Id_238.txt
-7-Torino, 14-16 Aprile 2003
CMSIM
http://cmsdoc.cern.ch/cmsim/cmsim.html
● Initialisation (cms131 – just released!)
> cmsim cms131
● Cards
http://cmsdoc.cern.ch/cms/production/www/html/general/
Take STANDARD_125_Id_42.txt and edit!(cfr. ~namapane/public/Tutorial/day2/cmsim/)
● Run
> $SRC/../bin/i386_linux22/cms131.exe < STANDARD_125_Id_42.txt
-8-Torino, 14-16 Aprile 2003
Examples/ExProductionExamples/ExProduction
FZsignal
FZminbias
SimHitsminbias
SimHitssignal
RecHits Ntuple
writeHits.cpp writeAllDigis.cpp
//all we need is to link the correct libraries//all we need is to link the correct libraries
//all we need is to link the correct libraries//all we need is to link the correct libraries
Populating the DB
-9-Torino, 14-16 Aprile 2003
Examples/ExProductionExamples/ExProduction BuildFile
<ignore> This is to write SimHits into a DB </ignore><environment> <Group name=G3Reader> <External ref=COBRA Use=CARF></Use>
<Group name=CaloHitWriter> <Use name=Calorimetry>
<ignore> To produce Muon barrel, endcap and RPC hits </ignore> <Group name=MuonHitWriter> <Use name=Muon> <ignore> To produce all Tracker hits </ignore> <Group name=TkHitWriter> <Use name=Tracker>
<bin file=writeHits.cpp></bin></environment>
<ignore> This is to write SimHits into a DB </ignore><environment> <Group name=G3Reader> <External ref=COBRA Use=CARF></Use>
<Group name=CaloHitWriter> <Use name=Calorimetry>
<ignore> To produce Muon barrel, endcap and RPC hits </ignore> <Group name=MuonHitWriter> <Use name=Muon> <ignore> To produce all Tracker hits </ignore> <Group name=TkHitWriter> <Use name=Tracker>
<bin file=writeHits.cpp></bin></environment>
writeHits
Reading of FZ files
● Magic in selecting SCRAM “Groups”
-10-Torino, 14-16 Aprile 2003
Examples/ExProductionExamples/ExProduction
.orcarc (cfr. ~namapane/public/Tutorial/day2/writeHits/)
Environment variables
setenv DETINPUT $CMS_PATH/oo/reconstruction/datafiles/cms131/cms131.rz
setenv DETINPUT $CMS_PATH/oo/reconstruction/datafiles/cms131/cms131.rz
MaxEvents = 100FZInputFiles = /castor/cern.ch/user/s/stw/cmsim/cms130/h300eemm.fzOutputDataSet = /System/SimHits/h300eemmGoPersistent = 1
MaxEvents = 100FZInputFiles = /castor/cern.ch/user/s/stw/cmsim/cms130/h300eemm.fzOutputDataSet = /System/SimHits/h300eemmGoPersistent = 1
Example FZ files in/castor/cern.ch/user/s/stw/cmsim/cms130
writeHits
ORCA 7_2_x works with cmsim v130/v131
eval `scram runtime -csh`eval `scram runtime -csh`
-11-Torino, 14-16 Aprile 2003
Action (1)
● Create HIT-files with 100 signal events with these cards
● Create HIT-files with 500 minbias events (for pileup):/castor/cern.ch/user/s/stw/cmsim/cms130/minbias.fzWrite in :
OutputDataSet = /System/SimHits/minbias
-12-Torino, 14-16 Aprile 2003
● High luminosity -> 20 minimumbias events in one bunch crossing
● Overlay crossings -5 to +3
● 200 min.bias for 1 signal event
● "recycle" min.bias events
Digitization and Pileup
-13-Torino, 14-16 Aprile 2003
Examples/ExProductionExamples/ExProduction BuildFile
<ignore> This is to write Digis/RecHits into a DB </ignore><environment> <Group name=G3> <Group name=SimReader> <External ref=COBRA Use=CARF></Use>
<ignore> To produce Calorimetry digis</ignore> <Group name=CaloHitReader> <Group name=CaloRHitWriter> <Group name=TriggerPrimitiveWriter> <Group name=CaloRHitReader> <Use name=Calorimetry>
<ignore> To produce all Muon digis</ignore> <Group name=MuonDigiWriter> <Use name=Muon> <ignore> To produce Tracker digis</ignore> <Group name=TkDigiWriter> <Use name=Tracker>
<bin file=writeAllDigis.cpp></bin></environment>
<ignore> This is to write Digis/RecHits into a DB </ignore><environment> <Group name=G3> <Group name=SimReader> <External ref=COBRA Use=CARF></Use>
<ignore> To produce Calorimetry digis</ignore> <Group name=CaloHitReader> <Group name=CaloRHitWriter> <Group name=TriggerPrimitiveWriter> <Group name=CaloRHitReader> <Use name=Calorimetry>
<ignore> To produce all Muon digis</ignore> <Group name=MuonDigiWriter> <Use name=Muon> <ignore> To produce Tracker digis</ignore> <Group name=TkDigiWriter> <Use name=Tracker>
<bin file=writeAllDigis.cpp></bin></environment>
writeAllDigis
Reading of SimHits
-14-Torino, 14-16 Aprile 2003
Examples/ExProductionExamples/ExProduction
.orcarc (cfr. ~namapane/public/Tutorial/day2/writeAllDigis/)
No Environment variables in addition toeval `scram runtime –csh`
InputCollections=/System/SimHits/h300eemm/h300eemmOutputDataSet = /System/Pileup2x1033/h300eemm
PUGenerator:Collection = /System/SimHits/minbias/minbiasPUGenerator:AverageEvents = 3.46PUGenerator:MinBunch = -5 PUGenerator:MaxBunch = 3PUGenerator:FirstEvent = -2
InputCollections=/System/SimHits/h300eemm/h300eemmOutputDataSet = /System/Pileup2x1033/h300eemm
PUGenerator:Collection = /System/SimHits/minbias/minbiasPUGenerator:AverageEvents = 3.46PUGenerator:MinBunch = -5 PUGenerator:MaxBunch = 3PUGenerator:FirstEvent = -2
WriteAllDigis
Default is No Pileup
-15-Torino, 14-16 Aprile 2003
.orcarcCaloRecHit:EcalBarrel = 1 CaloRecHit:EcalEndcap = 1 CaloRecHit:HcalBarrel = 1 CaloRecHit:Preshower = 1 Ecal:Barrel:noise = 0.03Ecal:Barrel:threshold = 0.06Ecal:Endcap:noise = 0.15Ecal:Endcap:threshold = 0.30Hcal:noise = 0.0006Hcal:threshold = 0.300Presh:noise = 0.000015Presh:threshold = 0.000054Calo:Preshower:MinBunch=-2 Calo:Preshower:MaxBunch=1
Muon:Barrel:MinBunch = 0Muon:Barrel:MaxBunch = 0
EcalTrigPrim:Threshold = 0.3HcalTrigPrim:Threshold = 0.3
GoPersistent = 1
CaloRecHit:EcalBarrel = 1 CaloRecHit:EcalEndcap = 1 CaloRecHit:HcalBarrel = 1 CaloRecHit:Preshower = 1 Ecal:Barrel:noise = 0.03Ecal:Barrel:threshold = 0.06Ecal:Endcap:noise = 0.15Ecal:Endcap:threshold = 0.30Hcal:noise = 0.0006Hcal:threshold = 0.300Presh:noise = 0.000015Presh:threshold = 0.000054Calo:Preshower:MinBunch=-2 Calo:Preshower:MaxBunch=1
Muon:Barrel:MinBunch = 0Muon:Barrel:MaxBunch = 0
EcalTrigPrim:Threshold = 0.3HcalTrigPrim:Threshold = 0.3
GoPersistent = 1
(continued)
-16-Torino, 14-16 Aprile 2003
Action (2)
● Fully digitize 10 events with these cards!
-17-Torino, 14-16 Aprile 2003
Reading DIGIs
● Warning! Groups for all objects written are needed in the BuildFile for a reading application
● Example – Examples/Statistics/ExDigiStatistics
<ignore> This is to read Digis/RecHits </ignore><environment> <Group name=G3> <Group name=RecReader> <External ref=COBRA Use=CARF>
<Group name=CaloRecHitReader> <Use name=Calorimetry>
<Group name=MuonDigiReader> <Use name=Muon> <Group name=TrackerDigiReader> <Use name=Tracker>
<bin file=ExDigiStatistics.cpp></bin></environment>
<ignore> This is to read Digis/RecHits </ignore><environment> <Group name=G3> <Group name=RecReader> <External ref=COBRA Use=CARF>
<Group name=CaloRecHitReader> <Use name=Calorimetry>
<Group name=MuonDigiReader> <Use name=Muon> <Group name=TrackerDigiReader> <Use name=Tracker>
<bin file=ExDigiStatistics.cpp></bin></environment>
reading of digitized events
ORCA 7.1.X
-18-Torino, 14-16 Aprile 2003
Action!
● Try Examples/Statistics/ExDigiStatistics!● Write your own .orcarc file!!!
● Try Workspace to see how many pile-up events we have!
-19-Torino, 14-16 Aprile 2003
Winter Mode
● Main interest for “production”● Decouples METADATA creation from EVENTDATA
creation● Three steps per dataset
● create an empty METADATA structure● process event samples in parallel
● jobs are fully independent (no locks)● crashed jobs can be simply re-started
● construct METADATA with COBRA tools after all jobs finished
● Examples/ExProduction/writeDigi_WinterMode*
-20-Torino, 14-16 Aprile 2003
Try out…
● Check scripts in ~namapane/public/Tutorial/day2/winter
● writeDigi_WinterMode.init● Only once
● writeDigi_WinterMode.job● Several times…
● writeDigi_WinterMode.finalize● Once, in the DB directory
-21-Torino, 14-16 Aprile 2003
WinterMode - Init
● Usual digitization cards plus:
● Blue: shared by all WinterMode steps
● Red: specific for initialization
Winter = 1EVD:Default = OnDemandEvents:EVDCreate = PreAllocateCollections:EVDCreate = PreAllocate
InitDataSet = 1
Winter = 1EVD:Default = OnDemandEvents:EVDCreate = PreAllocateCollections:EVDCreate = PreAllocate
InitDataSet = 1
-22-Torino, 14-16 Aprile 2003
WinterMode - Jobs
● Usual digitization cards plus:
● Blue: shared by all WinterMode steps
● Red: specific for jobs – use different run numbers!
Winter = 1EVD:Default = OnDemandEvents:EVDCreate = PreAllocateCollections:EVDCreate = PreAllocate
OutputRunNumber = 123
Winter = 1EVD:Default = OnDemandEvents:EVDCreate = PreAllocateCollections:EVDCreate = PreAllocate
OutputRunNumber = 123
-23-Torino, 14-16 Aprile 2003
WinterMode – Finalize
● Runs special COBRA applications
● Blue: in loop over all jobs
● Red: Upates METADATA for all attached runs
● Example: e4726b2a4b2611d783fd0040f45cca94.runid
cp XXX.runid .orcarcAttachRun OWNERNAME DATASETNAME
FixColl OWNERNAME DATASETNAME
cp XXX.runid .orcarcAttachRun OWNERNAME DATASETNAME
FixColl OWNERNAME DATASETNAME
CARF:ResumeRun=RUNS.META.PileupTk1024;h300eemmRuns;Run1 EVD0_Collections.h300eemm.PileupTk1034;Collections_e4726b2a4b2611d783fd0040f45cca94;LeafMetaCollection
CARF:ResumeRun=RUNS.META.PileupTk1024;h300eemmRuns;Run1 EVD0_Collections.h300eemm.PileupTk1034;Collections_e4726b2a4b2611d783fd0040f45cca94;LeafMetaCollection
-24-Torino, 14-16 Aprile 2003
Caveats!
● data written with one (pre-)release is probably unreadable with the next (pre-)release
● data written with one compiler (gcc-2.95.2) is unreadable with any other (gcc-3.2)
● Most BuildFiles currently require changes