COMIENZO EN DQM
Se debe tener cuenta en lxplus y una cuenta en Github.
Se debe crear un area de trabajo, en este caso estamos trabajando con la release CMSSW_7_1_0_pre5.
Se puede cargar esta release con
> cmsrel CMSSW_7_1_0_pre5
Cada que se ingrese a lxplus, se debe crear/cargar el ambiente de trabajo. Escribimos dentro de .../CMSSW_7_1_0_pre5/src
> cmsenv
Para tener acceso a los paquetes del DQM localizados en Github. Se debe generar una llave de acceso a Github para la computadora.
Instrucciones en la siguiente liga:
https://help.github.com/articles/generating-ssh-keys
Una vez teniendo la llave de acceso registrada, procedemos a cargar la paqueteria necesaria del DQM.
Lo cual hacemos siguiendo instrucciones de esta liga:
http://cms-sw.github.io/cmssw/faq.html
accesamos nuestra informacion personal:
y descargamos las siguientes paqueterias: DQMServicess/Components , DQM/SiStripMonitorHardware , DQM/SiStripMonitorCluster
git cms-addpkg <package-name>
Se puede hacer un test de esto siguiendo la siguiente liga:
https://twiki.cern.ch/twiki/bin/viewauth/CMS/DQMOffline#SequenceS
Lo cual nos genera una serie de archivos en DQMServices/Components/test
En mi caso, en la ruta DQMServices/Components/test/1399904772/11 puedo encontrar un archivo DQM_V01....root con los datos generados.
El primer trabajo consiste en generar nuevos histogramas en estos archivos.
cambiaremos la variable Time por LS (Luminosidad)
En la ruta CMSSW_7_1_0_pre5/src/DQMServices/Components/test/1399904772/11 explorar el contenido del archivo .root DQM_V01.....
Dentro del root, ingrese a la direccion y observe el contenido de
DQMData/Run165663/SiStrip/RunSumary/ReadoutView/trends
Para crear el histograma, debemos hacer algunso cambios a los codigos.
1.- En la direccion CMSSW_7_1_0_pre5/src/DQM/SiSitripMonitorHardware/python modificar el archivo siStripFEDMonitor_cfi.py
encontrar la linea del codigo donde aparece "nFEDErrorsvsTimeHistogramConfig" y copiar la misma estructura cambiando "Time" por "LS".
2.- En la direccion CMSSW_7_1_0_pre5/src/DQM/SiSitripMonitorHardware/interface modificar el archivo FEDHistograms.hh
Agregar una nueva variable a Void fillCounterHistograms ( ...., const double aLS=0)
encontrar la linea del codigo donde aparece "HistogramConfig nFEDErrorsvsTime" y copiar la misma estructura cambiando "Time" por "LS".
3.- En la direccion CMSSW_7_1_0_pre5/src/DQM/SiSitripMonitorCluster/src modificar el archivo FEDHistograms.cc
Agregar copiando la misma estructura que el de Time (copiarlas debajo del respectivo):
- get
ConfigForHistogram(nFEDErrorsvsLS_,"nFEDErrorsvsLS", iConfig, pDebugStream);
- fill Histogram (nFEDErrorssvLS_,aLS, fedlevelCounters.nFEDErrors);
- book profile (nFEDErrorsvsLS, "nFEDErrorsvsTime",
"Number of FEDs with any error vs Lumisection",
0,
42241, ///total number of channels
"LS",
"# FED Errors",
);
Ahora si, a compilar.
CMSSW_7_1_0_pre5/src > scramv1 b
y correr
CMSSW_7_1_0_pre5/src/DQM/SiSitripMonitorCluster/src > python witheRabitt.py -n11
Se genera una nueva version de los datos en la ruta CMSSW_7_1_0_pre5/src/DQMServices/Components/test, en este caso 1399904772.
ingresando a DQMServices/Components/test/1399904772/11/ el archivo DQM_V01....root contiene el nuevo histograma en
DQMData/Run165663/SiStrip/RunSumary/ReadoutView/trends/FED
EXTRAS
Quizás algunos de los directorios e histogramas que se declaran en
SiStripMonitorHardwar/src/FEDHistograms.hh, no aparecen en el archivo .ROOT
Para ello, deben ser activadas en
SisStripMonitorHardware/python/siSitripFEDMonitor_Tier0_cff.py, cambiando "False" por "True", esto es por ejemplo:
siStripFEDMonitor.nFEDCorruptBuffersvsTimeHistogramConfig = cms.untracked.PSet(
Enable = cms.untracked.bool(True),
...
Para cambiar el número de eventos a analizar:
Se localiza el archivo: /DQMServices/Components/Test/driver11a.sh, es la variable "numev".
Para dejar corriendo el trabajo: en
nohup python whiteRabbit.py -n11 &
La variante: nohup python whiteRabbit.py -n11 > & archivo.log > & correo y crea un archivo.log que guarda todos los problemas ocurridos.
--
MateoRamirezGarcia - 16 May 2014