ECAL TPG analyzer
Running ECAL TPG Analyzer (ECAL DPG/PFG group)
Useful tips about PFG software can be found
here. However, to install your personal code area do:
cmsrel CMSSW_3_2_0
cd CMSSW_3_2_0/src
cmsenv
cvs co -d CaloOnlineTools/EcalTools UserCode/CCEcal/CRUZET2/CaloOnlineTools/EcalTools
cvs co -r V02-02-06 SimCalorimetry/EcalTrigPrimAlgos
cvs co SimCalorimetry/EcalTrigPrimProducers/data
cvs co -r V01-00-16 CondFormats/EcalObjects
scramv1 b
The analyzer (
EcalTPGAnalyzer.cc and .h) is in:
cd CaloOnlineTools/EcalTools/plugins
And can be run with the cfg in:
cmsRun CaloOnlineTools/EcalTools/python/ecalTPGAnalyzer_cfg.py
It produces the ECAL TPG root Tree. In order to read this Tree and produce plots like the one displayed
here, run the program in
CaloOnlineTools/EcalTools/bin/TPGTreeReader.cpp
. Without arguments it prints out the help menu.
Submitting ECAL TPG Analyzer job on CAF
I've developed a couple of scripts to submit jobs on CAF automatically. All the scripts I'm going to describe are in cvs:
cvs co -d TPGAnalysis UserCode/paganini/TPGAnalysis
To submit jobs on CAF for a given run I usually write a simple script like this (run69382.csh):
#!/bin/csh
python dbs_discovery_formatter.py 69382 /castor/cern.ch/user/p/paganini/69382 cms_dbs_prod_global /Calo/Commissioning08-v1/RAW /Cosmics/Commissioning08-v1/RAW > tmp
chmod +x tmp
./tmp
rm tmp
And I just type ./run69382.csh (make it executable through chmod +x). That's all!!!!
Let's explain the only line that matters:
python dbs_discovery_formatter.py 69382 /castor/cern.ch/user/p/paganini/69382 cms_dbs_prod_global /Calo/Commissioning08-v1/RAW /Cosmics/Commissioning08-v1/RAW > tmp
python dbs_discovery_formatter.py is a python script I wrote to query and format the DBS. First argument (69382) is the run number; The second is the directory on castor where the TPG root trees will be stored (/castor/cern.ch/user/p/paganini/69382); The third is the DBS instance (cms_dbs_prod_global) ; And the last arguments are the list of datasets (/Calo/Commissioning08-v1/RAW and /Cosmics/Commissioning08-v1/RAW). So, what this script does is to:
- retrieve these files:
https://cmsweb.cern.ch/dbs_discovery/getLFN_txt?dbsInst=cms_dbs_prod_global&blockName=*&dataset=/Calo/Commissioning08-v1/RAW&userMode=user&run=69382&what=cff
and
https://cmsweb.cern.ch/dbs_discovery/getLFN_txt?dbsInst=cms_dbs_prod_global&blockName=*&dataset=/Cosmics/Commissioning08-v1/RAW&userMode=user&run=69382&what=cff
- parse the result and create one config file per data file through the auxiliary script pyMaker.csh (see pyMaker.csh to see what kind of config file you create)
- create the scripts (1 per data file) to be submitted on CAF and submit them thanks to pycafsub.csh
In the directory where you invoke the command dbs_discovery_formatter.py, you'll see lots of new temporary scripts created during the process in tmpdir: kind of
runOnCAF_run69382_1.sh and run69382_32.py
After the completion of the command, you can delete them (or check what you submitted on CAF!) via
rm tmpdir/*
There are few scripts which do all steps in 1:
runOnCraft.csh
runOnMWGR.csh
runOnMiniDAQ.csh
It works fine for me. It should for you too out of the box (hum... not so sure though). Feel free to copy these scripts for your own usage.
Results from Global Runs
CRAFT08 runs: 66482->70674
L1 menu: https://twiki.cern.ch/twiki/bin/view/CMS/GlobalTriggerMenu_L1Menu_startup2_v4
The systematic check was/is performed on
CRAFT runs. Default plots can be found here:
http://test-ecal-cosmics.web.cern.ch/test-ecal-cosmics/TPGAnalysis/
Few remarks:
- run 69475: was found to be badly configured. The compressed LUT used was the identity instead of being the one with TPG_LSB=250 MeV with a minimal threshold at 750 MeV (3 ADC).
- Many bumps in the emulated TP spectrum and not present in the data spectrum was due to masks applied to the real data and not (yet) in the emulator.
MWGR09_13 runs: ?->79051
- large part of the runs taken 25 of March were badly configured at the SRP level leading to ZS instead of SR
- known runs affected: 79018->79021
- All the runs of this MWGR suffer from a bad configuration of the TCC from the DB (maybe other cards are concerned as well): half of the channel were corrupted.
MWGR09_15 runs
WARNING: since this MWGR, EG_Single_1GeV = bit45 and EG_Single_2GeV = bit46, L1 menu: https://twiki.cern.ch/twiki/bin/view/CMS/GlobalTriggerMenu_L1Menu_Commissioning2009_v0
- 81093: EB+01,+02,+03 went out of sync (all TTs in SMs). These SMs share the same CCSsupervisor - QPLL lock loss. Global DAQ issued resync during run, these SMs now in READY state.
- ECAL trigger had bad latency after moving wrongly the BC0: ALL RUNS affected!
MWGR09_17 runs: 82347->82548
- ECAL trigger had bad latency after moving wrongly the BC0: ALL RUNS before 82499 affected! 82499 is fine.
- 82548: ECAL TPG timing weird
MWGR09_18 runs: 83035->83084
WARNING: since run 83038, EG_Single_1GeV = bit45 is prescaled by 10
- 83078: ECAL TPG timing weird
MWGR09_19 runs: 84024->?
- ECAL bit 48 has been used in several runs
- from 84168 to the end of the GR, GCT is out (so no ECAL nor HCAL trigger)
- ECAL key cosmic ZS for [84099, 84168]
MWGR09_22 runs: 97651->97719
- EE TPG readout but with threshold 1 ADC.
MiniDAQ EE tests runs: 97834 -> 97955
CRUZET09 runs: 98129->98534
- EE+ in trigger with TPG threshold> 17 (17*62.5 = 1.0625 GeV). Trigger rate bit 45 ~ 200-300 Hz
MWGR09_24 runs: 99272->99563
- 99549: laser in the middle of physics orbit
MWGR09_25 runs: 100227->100352
MWGR09_26 runs: 100820->
MWGR09_29 runs: 106001->106019
- All runs before 106001 were buggy because of a bug in the TrigXtalAdapter whach exchanged baseline and shift! This probably affects previous GR as well.
Splash09
- first session 7-8 Nov: runs 120015, 120020, 120040, 120041, 120042
- Second session 20-21 Nov: runs 121943, 121949, 121964, 121976, 121880, 121981, 121982, 121993
EE test Dec 09
triggered by EE enabling 1 single TT at a time.
- Runs with delay file Delays.txt_EE091116: 123335, 123473
- Runs with delay file Delays.txt_091202: 123474, 123475 (timing shifted by 2 BX on purpose), 123480
First collision 09
In bold large stat:
- Runs 122314, 123575 (timing centered at 0)
- With timing shifted by +12 ns to get EG trigger at the right BX: 123576, 123578, 123587, 123589, 123591, 123592, 123592
- Runs with EG1 in L1 in coincidence with BPTX: 123615