Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Matrix Element Inputs in CMS2 Relax and have patience :) | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > | This page documents the procedure to generate the this input Smurf Ntuple and the utility histograms that are needed to do the ME calculations. The code can be browsed here.
Instruction
| |||||||
Deleted: | ||||||||
< < |
| |||||||
| ||||||||
Deleted: | ||||||||
< < | cvs co -d Smurf/ UserCode /Smurf | |||||||
cvs co -d CMS2/NtupleMacros/CORE UserCode /JRibnik/CMS2/NtupleMacros/CORE cd CMS2/NtupleMacros/CORE cvs up -r WW2010 CMS2.h CMS2.cc | ||||||||
Line: 18 to 19 | ||||||||
cvs co -d CMS2/NtupleMacros/HWWME UserCode /JRibnik/CMS2/NtupleMacros/HWWME cvs co -d CMS2/NtupleMacros/Tools UserCode /JRibnik/CMS2/NtupleMacros/Tools | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
cd CMS2/NtupleMacros/HWWME ln -s /tas/cms2 data ln -s ../CORE CORE | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Changed: | ||||||||
< < | root -l doAll.C | |||||||
> > | root -l -q doAllHWW.C root -l -q doAllHZZ.C | |||||||
Added: | ||||||||
> > | ||||||||
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Matrix Element Inputs in CMS2 | ||||||||
Line: 28 to 28 | ||||||||
root -l doAll.C | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
-- SergoJindariani - 04 Jan 2011 |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Changed: | ||||||||
< < | Matrix Element Implementation in CMS2 | |||||||
> > | Matrix Element Inputs in CMS2 | |||||||
Relax and have patience :) | ||||||||
Deleted: | ||||||||
< < | The ME code is set up so that it takes a flat root ntuple in the form of Smurf Ntuple with event kinematics as an input, performs all event probability calculations and then outputs new file which is a clone of the original + an extra branch containing ME values. | |||||||
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Matrix Element Implementation in CMS2 Relax and have patience :) | ||||||||
Changed: | ||||||||
< < | The ME code is set up so that it takes flat root ntuples (babies) with event kinematics as an input, performs all event probability calculations and then outputs new file which is a clone of the original + an extra branch containing ME values. These babies are created from CMS2 ntuples using a piece of code which also applies event selection. Right now the amount of information stored in the babies is limited to what is needed for ME calculations. One could in principle expand. | |||||||
> > | The ME code is set up so that it takes a flat root ntuple in the form of Smurf Ntuple with event kinematics as an input, performs all event probability calculations and then outputs new file which is a clone of the original + an extra branch containing ME values. | |||||||
Added: | ||||||||
> > |
| |||||||
Changed: | ||||||||
< < | Prepare root ntuples as the input to the ME calculations
| |||||||
> > |
| |||||||
| ||||||||
Added: | ||||||||
> > | cvs co -d Smurf/ UserCode /Smurf | |||||||
cvs co -d CMS2/NtupleMacros/CORE UserCode /JRibnik/CMS2/NtupleMacros/CORE cd CMS2/NtupleMacros/CORE cvs up -r WW2010 CMS2.h CMS2.cc cd ../../../ | ||||||||
Changed: | ||||||||
< < | cvs co -r wwVsHww_diLep2020_v3 -d CMS2/NtupleMacros/HWWME UserCode /JRibnik/CMS2/NtupleMacros/HWWME | |||||||
> > | cvs co -d CMS2/NtupleMacros/HWWME UserCode /JRibnik/CMS2/NtupleMacros/HWWME | |||||||
cvs co -d CMS2/NtupleMacros/Tools UserCode /JRibnik/CMS2/NtupleMacros/Tools | ||||||||
Deleted: | ||||||||
< < | ||||||||
| ||||||||
Line: 32 to 30 | ||||||||
root -l doAll.C | ||||||||
Changed: | ||||||||
< < |
Preparation of MCFM libraries (or building libmcfm.so)You can copy this file from/afs/cern.ch/user/y/yygao/public/libmcfm.so.The following instructions are for generating this library by yourself,
Run ME Calculations to produce cross-sections and LRWe now change the working directory to the HWWME/ME.
Planned improvements
| |||||||
> > |
| |||||||
-- SergoJindariani - 04 Jan 2011 |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Matrix Element Implementation in CMS2 | ||||||||
Line: 10 to 10 | ||||||||
Prepare root ntuples as the input to the ME calculations
| ||||||||
Added: | ||||||||
> > |
| |||||||
cvs co -d CMS2/NtupleMacros/CORE UserCode/JRibnik/CMS2/NtupleMacros/CORE cd CMS2/NtupleMacros/CORE cvs up -r WW2010 CMS2.h CMS2.cc cd ../../../ | ||||||||
Changed: | ||||||||
< < | cvs co -d CMS2/NtupleMacros/HWWME UserCode /JRibnik/CMS2/NtupleMacros/HWWME | |||||||
> > | cvs co -r wwVsHww_diLep2020_v3 -d CMS2/NtupleMacros/HWWME UserCode /JRibnik/CMS2/NtupleMacros/HWWME | |||||||
cvs co -d CMS2/NtupleMacros/Tools UserCode /JRibnik/CMS2/NtupleMacros/Tools | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
Added: | ||||||||
> > | cd CMS2/NtupleMacros/HWWME | |||||||
ln -s /tas/cms2 data ln -s ../CORE CORE | ||||||||
Line: 29 to 32 | ||||||||
root -l doAll.C | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
Preparation of MCFM libraries (or building libmcfm.so) | ||||||||
Line: 71 to 73 | ||||||||
| ||||||||
Changed: | ||||||||
< < | .x runME_WWHWW.C("../WW_skimmednTuple.root",10,1,100000,1.0,0) | |||||||
> > | .x runME_WWHWW.C+("../WW_skimmednTuple.root",10,1,100000,1.0,0, 10) | |||||||
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Matrix Element Implementation in CMS2 |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Matrix Element Implementation in CMS2 | ||||||||
Line: 71 to 71 | ||||||||
| ||||||||
Changed: | ||||||||
< < | .x runME_WWHWW.C("../WW_skimmednTuple.root",10,3,50000,1.0,0) | |||||||
> > | .x runME_WWHWW.C("../WW_skimmednTuple.root",10,1,100000,1.0,0) | |||||||
| ||||||||
Line: 84 to 84 | ||||||||
6 - Mass, if 0 - calculate for all processes and Higgs mass hypothesis
| ||||||||
Deleted: | ||||||||
< < |
| |||||||
| ||||||||
Added: | ||||||||
> > | Planned improvements
| |||||||
-- SergoJindariani - 04 Jan 2011 |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Changed: | ||||||||
< < | Relax and have patience :) | |||||||
> > | Matrix Element Implementation in CMS2 | |||||||
Changed: | ||||||||
< < | Prepare root ntuples: | |||||||
> > | Relax and have patience :) | |||||||
Changed: | ||||||||
< < |
| |||||||
> > | The ME code is set up so that it takes flat root ntuples (babies) with event kinematics as an input, performs all event probability calculations and then outputs new file which is a clone of the original + an extra branch containing ME values. These babies are created from CMS2 ntuples using a piece of code which also applies event selection. Right now the amount of information stored in the babies is limited to what is needed for ME calculations. One could in principle expand. | |||||||
Deleted: | ||||||||
< < |
| |||||||
Changed: | ||||||||
< < | CMS2/NtupleMacros/WW/sergo | |||||||
> > | Prepare root ntuples as the input to the ME calculations | |||||||
Changed: | ||||||||
< < | files you need are: ScanChain .C branches.h TBitSet .cc TBitSet .hh doAll.C (one day I will put them to CVS) | |||||||
> > |
| |||||||
| ||||||||
Added: | ||||||||
> > | ln -s /tas/cms2 data ln -s ../CORE CORE | |||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Changed: | ||||||||
< < | root -l doAll.C\(\"Wjets\"\) | |||||||
> > | root -l doAll.C\(\"WW\"\) | |||||||
Changed: | ||||||||
< < | this should create a file Wjets_skimmednTuple.root with events passing selection criteria. | |||||||
> > | this should create a file WW_skimmednTuple.root with events passing selection criteria. | |||||||
* Proceed with other samples for data, backgrounds and signal. In the end you should have one ntuple file per process.
Preparation of MCFM libraries (or building libmcfm.so) | ||||||||
Changed: | ||||||||
< < | * I suggest that you do this part on cmslpc-sl5. The code requires 32-bit libgfortran.so library. Unfortunately, I could not find 32 bit version of this library on UCSD cluster. Transferring from cmslpc does not work either b/c ucsd has gcc 4.3.4 compiler while cmslpc has 4.1.2. (gcc -v). | |||||||
> > |
You can copy this file from /afs/cern.ch/user/y/yygao/public/libmcfm.so.The following instructions are for generating this library by yourself,
| |||||||
* Start by downloading the MCFM package, under SL5 current release is 5.8
| ||||||||
Line: 52 to 64 | ||||||||
Producing ME ntuples: | ||||||||
Deleted: | ||||||||
< < | * Create subfolder called "ME" and copy there everything from /home/users/sergo/WWtest/CMSSW_3_8_6/src/CMS2/NtupleMacros/WW/sergo/ME/MEcode4cvs (this should go into CVS too) TEvtProb .cc - main class, generates random numbers, calls PhaseSpace . See TUtil.cc line 539 on how pdf and mcfm ME functions are called. | |||||||
Added: | ||||||||
> > | We now change the working directory to the HWWME/ME.
| |||||||
* Compile by running gmake, this will create libME.so. | ||||||||
Deleted: | ||||||||
< < | * place libmcfm.so here too | |||||||
* Ok, you are pretty much done, now do:
root -l | ||||||||
Changed: | ||||||||
< < | .x runME_v2.C("../Wjets_skimmednTuple.root",10,3,50000,1.0,0) | |||||||
> > | .x runME_WWHWW.C("../WW_skimmednTuple.root",10,3,50000,1.0,0) | |||||||
Changed: | ||||||||
< < | The arguments are: | |||||||
> > |
| |||||||
1 - input file 2 - random seed | ||||||||
Line: 73 to 83 | ||||||||
5 - error threshold 6 - Mass, if 0 - calculate for all processes and Higgs mass hypothesis | ||||||||
Added: | ||||||||
> > |
| |||||||
* Number of events is hardcoded in runME_v2, I will change this. * Output file should contain ME tree and will be called Wjets_skimmednTuple_ME.root | ||||||||
Added: | ||||||||
> > |
| |||||||
-- SergoJindariani - 04 Jan 2011 |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Relax and have patience :) | ||||||||
Line: 46 to 46 | ||||||||
g++ -Wl,-soname,libmcfm.so -m32 -march=i686 -shared -o libmcfm.so *.o -L /home/cdfsoft/products/cern/2004/Linux+2.4-2.3.2/lib (replace with your path) g++ -Wl,-soname,libmcfm.so -m32 -march=i686 -shared -o libmcfm.so *.o -L /uscmst1/prod/sw/cms/external/cern/2006b/i686-slc5-gcc34-opt/lib/ (at cmslpc-sl5 -YY) | ||||||||
Added: | ||||||||
> > | g++ -Wl,-soname,libmcfm.so -m32 -march=i686 -shared -o libmcfm.so *.o -L /code/osgcode/cdfsoft/products/cern/2004/Linux+2.4/lib (at ucsd -KB) | |||||||
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Relax and have patience :) | ||||||||
Line: 11 to 11 | ||||||||
CMS2/NtupleMacros/WW/sergo | ||||||||
Changed: | ||||||||
< < | files you need are: branches.h TBitSet .cc TBitSet .hh doAll.C (one day I will put them to CVS) | |||||||
> > | files you need are: ScanChain .C branches.h TBitSet .cc TBitSet .hh doAll.C (one day I will put them to CVS) | |||||||
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Relax and have patience :) | ||||||||
Line: 45 to 45 | ||||||||
| ||||||||
Added: | ||||||||
> > | g++ -Wl,-soname,libmcfm.so -m32 -march=i686 -shared -o libmcfm.so *.o -L /uscmst1/prod/sw/cms/external/cern/2006b/i686-slc5-gcc34-opt/lib/ (at cmslpc-sl5 -YY) | |||||||
|
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Changed: | ||||||||
< < | This is a long shot, relax and have patience :) | |||||||
> > | Relax and have patience :) | |||||||
Here I assume that you have already set up your favorite CMSSW release and set up CMS2. | ||||||||
Line: 11 to 11 | ||||||||
CMS2/NtupleMacros/WW/sergo | ||||||||
Changed: | ||||||||
< < | files you need are: branches.h TBitSet .cc TBitSet .hh doAll.C | |||||||
> > | files you need are: branches.h TBitSet .cc TBitSet .hh doAll.C (one day I will put them to CVS) | |||||||
| ||||||||
Line: 23 to 23 | ||||||||
* Proceed with other samples for data, backgrounds and signal. In the end you should have one ntuple file per process. | ||||||||
Changed: | ||||||||
< < | Preparation of MCFM libraries: | |||||||
> > | Preparation of MCFM libraries (or building libmcfm.so)* I suggest that you do this part on cmslpc-sl5. The code requires 32-bit libgfortran.so library. Unfortunately, I could not find 32 bit version of this library on UCSD cluster. Transferring from cmslpc does not work either b/c ucsd has gcc 4.3.4 compiler while cmslpc has 4.1.2. (gcc -v). | |||||||
* Start by downloading the MCFM package, under SL5 current release is 5.8
| ||||||||
Line: 44 to 46 | ||||||||
g++ -Wl,-soname,libmcfm.so -m32 -march=i686 -shared -o libmcfm.so *.o -L /home/cdfsoft/products/cern/2004/Linux+2.4-2.3.2/lib (replace with your path) | ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
Producing ME ntuples: | ||||||||
Changed: | ||||||||
< < | * Create subfolder called "ME" and copy there everything from /home/users/sergo/WWtest/CMSSW_3_8_6/src/CMS2/NtupleMacros/WW/sergo/ME/MEcode4cvs | |||||||
> > | * Create subfolder called "ME" and copy there everything from /home/users/sergo/WWtest/CMSSW_3_8_6/src/CMS2/NtupleMacros/WW/sergo/ME/MEcode4cvs (this should go into CVS too) TEvtProb .cc - main class, generates random numbers, calls PhaseSpace . See TUtil.cc line 539 on how pdf and mcfm ME functions are called. | |||||||
* Compile by running gmake, this will create libME.so. | ||||||||
Added: | ||||||||
> > | * place libmcfm.so here too | |||||||
* Ok, you are pretty much done, now do:
root -l | ||||||||
Changed: | ||||||||
< < | .x runME_v1.C("../Wjets_skimmednTuple.root",10,3,50000,1.0,0) | |||||||
> > | .x runME_v2.C("../Wjets_skimmednTuple.root",10,3,50000,1.0,0) | |||||||
The arguments are:
1 - input file 2 - random seed | ||||||||
Changed: | ||||||||
< < | 3 - smearing level, not used now 4 - number of steps in the integration | |||||||
> > | 3 - smearing level, not used now due to the absence of the resolution functions. In other words, P_reco=P_gen is assumed. 4 - number of steps in the integration, 50k has proven to be enough for stable results. | |||||||
5 - error threshold 6 - Mass, if 0 - calculate for all processes and Higgs mass hypothesis | ||||||||
Added: | ||||||||
> > | * Number of events is hardcoded in runME_v2, I will change this. * Output file should contain ME tree and will be called Wjets_skimmednTuple_ME.root | |||||||
-- SergoJindariani - 04 Jan 2011 |
Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Added: | ||||||||
> > | This is a long shot, relax and have patience :) Prepare root ntuples:
Preparation of MCFM libraries:* Start by downloading the MCFM package, under SL5 current release is 5.8wget http://mcfm.fnal.gov/mcfm-5.8.tar.gz tar zxf tarballname.tgz cd MCFM ./Install
Producing ME ntuples:* Create subfolder called "ME" and from WW/sergo copy the following files and folders:*.cc, *.hh, *.DAT, *.C, foam, Pdfdata, Makefile, Linkdef.h* Compile by running gmake, this will create libME.so. * Ok, you are pretty much done, now do: root -l .x runME_v1.C("../Wjets_skimmednTuple.root",10,3,50000,1.0,0)The arguments are: 1 - input file 2 - random seed 3 - smearing level, not used now 4 - number of steps in the integration 5 - error threshold 6 - Mass, if 0 - calculate for all processes and Higgs mass hypothesis-- SergoJindariani - 04 Jan 2011 |