mercoledì 15 luglio 2009

EcalCondDB.py

latest news: with 3_3_X there is no need to download additional packages.
For example, in

CMSSW_3_3_X_2009-09-28-0100

and above

do

$CMSSW_RELEASE_BASE/src/CondTools/Ecal/python/EcalCondDB.py --listtags

Older things:

with

cmsrel CMSSW_3_1_0_pre7
addpkg CondCore/EcalPlugins sa6
addpkg CondTools/Ecal sa5
addpkg CondCore/IOVService zx29052009
addpkg CondCore/Utilities zx29052009
addpkg CondFormats/Common zx29052009



we have

1. histograms and comparison for the endcap as well
2. no need to specify till, only since

Example

./EcalCondDB.py --compare=comp.png -t EcalIntercalibConstants_mc --since=1 -t EcalIntercalibConstantsMC_EBg50_EEwithB --since=1


Note : the tag
addpkg CondCore/EcalPlugins sa6
fixes the bug by which the same constants were shown on the plus and minus side in EB

martedì 14 luglio 2009

EcalCondDB.py again

with

CondTools/Ecal sa4

iovs are properly handled. I have added the function listiovs, example

./EcalCondDB.py --listiovs -t EcalIntercalibConstantsMC_EBg50_EEnoB

Now all functions not only need tag specification, but also since and till :

./EcalCondDB.py --compare=comp.png -t EcalIntercalibConstants_mc --since=1 --till=inf -t EcalIntercalibConstantsMC_EBg50_EEwithB --since=1 --till=inf

Note that "inf" is short for 4294967295

./EcalCondDB.py --histo=h.png -t EcalIntercalibConstantsMC_EBg50_EEnoB --since=1 --till=4294967295

venerdì 10 luglio 2009

Ecal Cond DB python Tools

I've refined a bit the initial idea, the new recipe is :

cmsrel CMSSW_3_1_0_pre7
cd CMSSW_3_1_0_pre7
cmsenv
addpkg CondCore/IOVService zx29052009

addpkg CondCore/Utilities zx29052009
addpkg CondFormats/Common zx29052009
addpkg CondCore/EcalPlugins sa3
addpkg CondTools/Ecal sa3
scram b -j4
cd CondTools/Ecal/python

The main script is now EcalCondDB.py , in CondTools/Ecal/python.
Invoke it without arguments to show help

Examples:

1. To get help
./EcalCondDB.py --help

2. To list all tags in a given database
./EcalCondDB.py -c oracle://cms_orcoff_prod/CMS_COND_31X_ECAL -l

The connection string above is actually the default

3. To dump a record with given tag to xml
./EcalCondDB.py --dump=file.xml -t EcalIntercalibConstants_EBg50_EEnoB
./EcalCondDB.py --dump=file2.xml -t EcalIntercalibConstantsMC_mc

4. To write a map of the intercalibration constants
./EcalCondDB.py --plot=plot.png -t EcalIntercalibConstants_EBg50_EEnoB

Different graphics formats can be specified by changing extension (.root,.svg,.jpg, etc)

5. To produce histograms of the intercalibration constants
./EcalCondDB.py --histo=plot.png -t EcalIntercalibConstants_EBg50_EEnoB

With the --histo tag one can specify, with -t, a xml file instead of a database tag:
./EcalCondDB.py --histo=plot.png -t file.xml

5. To compare records
./EcalCondDB.py --compare=plot.png -t EcalIntercalibConstants_EBg50_EEnoB -t EcalIntercalibConstantsMC_mc

--compare also supports xml file comparison

./EcalCondDB.py --compare=plot.png -t file.xml -t file2.xml

To develop new histograms, the file EcalCondTools.py should be modified



mercoledì 1 luglio 2009

Ecal Records XMl dump

Use python wrapper to dump records in xml format.

Recipe:

cmsrel CMSSW_3_1_0_pre7
cd CMSSW_3_1_0_pre7
addpkg CondCore/IOVService zx29052009
addpkg CondCore/Utilities zx29052009
addpkg CondFormats/Common zx29052009
addpkg CondCore/EcalPlugins sa
addpkg CondTools/Ecal sa
scram b -j4

cd src/CondTools/Ecal/test

#lista tag
./inspectEcal.py -l

#dump to screen
./inspectEcal.py -t EcalADCToGeVConstant_n_avg1_ideal

#dump to file
./inspectEcal.py -t EcalADCToGeVConstant_n_avg1_ideal -f pippo.xml