Ryan's Globe Reference
Globe Links
- Link to globe board
- Link to GlobeHzzAnalysis
GlobeSetup _21X
- Check out the Globe Analyzer
cvs co -rTAG -d Analyzers !UserCode/Simon/Analyzers
Remember to switch to CERN cvs.
cvs co RecoEcal/EgammaCoreTools
Edit
interface/Limits.h
and uncomment
#define CMSSW_VERSION_210
Edit
src/GlobeEcalClusters.cc
and remove &geometry from localCovariance() call.
- Check out the little Globe
Switch back to the UCSD cvs.
cvs co -rTAG -d globe UserCode/Mpieri/globe
cd globe
cp -p ../Analyzers/GlobeAnalyzer/interface/Limits.h branchdef/.
./scripts/gettreedef
./scripts/getnewtclonesarray
./scripts/gettreebranch.pl
Comment out any analysis that are messing up the build.
./script/commentanalsyis NAME
GlobeSetup _16X
Run the following script
#!/bin/bash
user=rwkelley
start=`pwd`
cmssw=1_6_12
globeAn_ver=V00-01-06
globe_ver=GLOBE_053
#setup cvs repo
export CVSROOT=":ext:$user@uaf-2.t2.ucsd.edu:/nfs-1/ucsd-cvs/"
export CVS_RSH="ssh"
#create CMSSW directory
if [ ! -d "CMSSW_$cmssw" ] ; then
scramv1 project CMSSW CMSSW_$cmssw
fi
cd $start/CMSSW_$cmssw/src/
eval `scramv1 runtime -sh`
if [ ! -d "Analyzers" ] ; then
cvs co -r$globeAn_ver -d Analyzers UserCode/Simon/Analyzers
#Remove Pi Zero Discriminator stuff
temp=Analyzers/GlobeAnalyzer/interface
sed "s/^\(#define PIZERODISCRIMINATOR\)$/\/\/\1/g" $temp/Limits.h > $temp/tempFile
mv $temp/tempFile $temp/Limits.h
switch="-f"
export CVSROOT=":pserver:anonymous:98passwd@cmscvs.cern.ch:/cvs_server/repositories/CMSSW"
cvs co -r V00-07-00-02 DataFormats/EgammaCandidates
cvs co -r V00-04-05-01 DataFormats/EgammaReco
cvs co -r CMSSW_1_6_8 DataFormats/EgammaReco/interface/BasicCluster.h
cvs co -r V00-05-12 RecoEcal/EgammaClusterProducers
cvs co -r V00-01-11 RecoEgamma/Examples
cvs co -r V00-00-07 -d RecoEgammaBis UserCode/Matteosan/1_6_7/RecoEgammaBis
mv Analyzers/GlobeAnalyzer/doc/PiZeroDiscriminatorProducer.cc RecoEcal/EgammaClusterProducers/src/
mv Analyzers/GlobeAnalyzer/doc/PreshowerClusterShapeProducer.cc RecoEcal/EgammaClusterProducers/src/
export CVSROOT=":ext:$user@uaf-2.t2.ucsd.edu:/nfs-1/ucsd-cvs/"
fi
#build GlobeAnalyzer
cd $start/CMSSW_$cmssw/src
eval `scramv1 runtime -sh`
scramv1 $switch build -j 5
# get mini globe
cd $start/CMSSW_$cmssw/src
if [ ! -d "globe" ] ; then
cvs co -r$globe_ver -d globe UserCode/Mpieri/globe
cp -p Analyzers/GlobeAnalyzer/interface/Limits.h globe/branchdef/.
cd globe
make clean; make
else
cd globe
make
fi
cd $start
echo "----------------------------------------------------"
echo "You should now have a working Globe setup, congrats!"
echo "----------------------------------------------------"
Comment out any analysis that are messing up the build.
./script/commentanalsyis NAME
Description of Files
filenames.dat
The "config" files for globe are found in
Hzz/plot_cstep(red)/filenames.dat
typerun=-2
realtyperun=711
fillminuit=0
inputFilesName=plot_cstep/inputfiles.dat
countersName=plot_cstep/counters.dat
cutsName=plot_cstep/cuts.dat
plotVariablesName=plot_cstep/plotvariables.dat
These field determine the behavior of
globe and which files to use.
inputfiles.dat
1 intL=100000000.0 rtree=0 schif.root outputFileName.root
typ=1 ind=0 draw=1 Nam=hzz150 Fil=path/h150zz106.root tot=10000 red=9900 lum=1000000000. xsec=0.0056029 kfac=1. scal=1.
- The First line
- [int] → # of files to read
- intL → integraded luminosity for normalization [pb-1]
- rtree = 0 no output, 1 reduced ROOT file output
- [file] → outut reduced ROOT file name
- [file] → histogram ROOT file name
- Subsequent lines
- typ → type of the sample. Use this to define different behavior for different type of datasets (signal vs. background, gen vs. reco, etc.)
- Conventions: 0 = data, > 0 = signal MC, < 0 background MC
- ind → index of files. Used for sample broken into different files.
- draw → draw (1) or not (0) the histogram
- Nam → short name for the file (ex: Zee, Hzz, ttbar) for the legends/cuts/counters
- Fil → input ROOT file name
- tot → total number of events of the sample corresponding to the cross-section read with the analyzer and reduced to the number of red (see next item, only ratio red/tot is used) (maybe only the first line with the same index is used)
- red → total number of events in the file (only ratio red/tot is used)
- xsec → σ in [pb] of the [tot] events read from the analyzer
- kfac → σ k-factor (counters scale with it)
- scal scale factor for the histogram display (to show small signals, counters does not scale it)
counters.dat
1
0 ncat=0 pri=1 0 0 0 All_Events
- The First line
- [int] → # of counters
- Subsequent lines
- [int] → counter sequence number (not used)
- ncat → category of counter
- pri → 0 = do not print, 1 = print
- 3 x [int] → counter # to be used as denominator to compute three different efficiencies (-1 do not compute)
- [string] → counter name
plotvariables.dat
2 plot=3 idummy=0
0 htyp=0 plot=-1 ncat=0 3 0 -0.5 2.5 0. 0. numHs
1 htyp=0 plot=-1 ncat=0 100 0 149.0 151.0 0. 0. genH_mass
- The First line
- [int] → # of histograms
- [plot] → default plot command (see plot variable below)
- [idummy] → # of histo to start from (1000 is the do all option from PlotHist? () )
- Subsequent lines
- [int] → histogram sequence number (if < 0 then gif/eps/C not produced)
- htyp → histgram type
- TH1F = 0
- TH1F = 1
- TProfile = 2
- plot → plot command (negative: do not plot)
- -1 = use the default (set in the first line)
- 0 = integral normalized to cross section
- 1 = normalized to 1
- 2 = normalized to xsection
- 3 = normalized to # entries (no scale factor)
- 10 = integral normalized to cross section + sig/bg histos (sig type > 0, data 0, bg < 0 )
- ncat → histogram categories, if < 0 the # does not correspond to the # of categories, but it is a link to the list of category names at the end of the file.
- 2 x [int] → # bins x y (set y = 0 for 1d histos)
- 4 x [float] → histogram boundaries: xmin xmax ymin ymax (set y values = 0.0 for 1d histos)
- [string] → variable name (to be filled in [AnalysisName]Functions_cc.h)
cuts.dat
Cuts are only parameters (to avoid hard coding)
3
0 cut_red_etrecel ncat=1 dir=0 fin=0 5.0
1 cut_red_etagenmu ncat=1 dir=0 fin=0 5.0
2 cut_genet ncat=3 dir=0 fin=0 5.0 3.0 10.0
- The First line
- [int] → # of cuts
- Subsequent lines
- [int] → cut sequence number
- [string] → name of cut
- ncat → # cut categories (can be used to have an array of cuts)
- dir → direction of the cut
- 0 = variable > cut1
- 1 = variable < cut1
- 2 = cut1 < variable < cut2
- fin → to use for the (n-1) plots as a final cut (set >=1) or off (0)
- [float] → cut1 value
- [float] → cut2 value (if needed)