Getting started

To set your environment and run locally follow the instructions in TopD3PDStartGuide (for now, use AnalysisTop-1.6.0 instead of AnalysisTop-1.7.0).

Run on grid

In general, follow the instructions in TopD3PDScripts. Depending on your analysis interest, you may want to change some settings in TopD3PDScripts/python/ and grid/*/

Packages that need some tweaks

Note: everytime you checkout a package (i.e. you want to use a local copy of a packages instead of a centralized copy), you have to run rc find_packages in order to update the list and the paths of the packages.


Check out the latest tag (not yet included in AnalysisTop-1.6.0):
 rc checkout_pkg atlasoff/PhysicsAnalysis/TopPhys/TopD3PDScripts/tags/TopD3PDScripts-00-00-28/ 

  • In python/ there are several settings that should be changed according to your needs:
    • Code (default 'D3PD2MiniSL') allows the choice of the actual code to run: D3PD2MiniSL for standard resolved ntuples, D3PD2BoostedMiniSL for ntuples containing the variables needed for the reconstruction of the boosted top.
    • TopFiducial (default False) if set to True allows the creation of a tree containing the truth information at particle level. To be tested on D3PD2BoostedMiniSL
    • FilterMask (default '0x0') sets the cutflow to be applied (as defined in TopD3PDSelection/SemiLeptonic.h). For example, FilterMask = '0xfff' (single lepton cut flow up to njets>3 and no etmiss and mwt cut. To be tested on D3PD2BoostedMiniSL

python/ can be modified in order to be able to launch the jobs on your local cluster (using the FAX protocol if the D3PDs aren't stored locally)

  • python/ still contains the old NTUP_TOP, that need to be replaced with the new NTUP_COMMON. For example:
TopD3PDScripts/python $ svn diff
---     (revision 613622)
+++     (working copy)
@@ -31,7 +31,8 @@
+# 'mc12_8TeV.117050.PowhegPythia_P2011C_ttbar.merge.NTUP_TOP.e1728_s1581_s1586_r3658_r3549_p1400/',

  • grid/*/ can be configured with the parameters needed for the job submission:
TopD3PDScripts.SubmissionHelper.Configuration.GridUsername  = 'mromano'
TopD3PDScripts.SubmissionHelper.Configuration.Suffix        = 'DATA_BOOST_2014_09_12'
TopD3PDScripts.SubmissionHelper.Configuration.ExcludedSites = ''
TopD3PDScripts.SubmissionHelper.Configuration.Code          = 'D3PD2MiniSLBoost'
TopD3PDScripts.SubmissionHelper.Configuration.FilterMask    = '0xfff' #C0-C11, not sure if it's used by D3PD2MiniSLBoost
TopD3PDScripts.SubmissionHelper.Configuration.NoSubmit      = False
TopD3PDScripts.SubmissionHelper.Configuration.Debug         = True
TopD3PDScripts.SubmissionHelper.Configuration.TopFiducial   = True

  • scripts/*/ needs to be modified since the new JEDI infrastructure for grid jobs has changed the names of the output datasets (apparently, you just need to set the onlyMergedFiles flag to false when calling TopD3PDScripts.DownloadHelper.Download(datasetPattern, outputDirectory, loops, onlyMergedFiles)

TopD3PDBoosted (patched to make ti work with AnalysisTop-1.6.0)

Check out the latest tag:
rc checkout_pkg atlasoff/PhysicsAnalysis/TopPhys/TopD3PDBoosted/tags/TopD3PDBoosted-14-00-27 
rc checkout_pkg atlasoff/PhysicsAnalysis/TopPhys/TopPhysUtils/TopAnalysisBase/tags/TopAnalysisBase-12-00-27 
Replace the files from SVN with those from Marino's mod
$ cp -r /afs/* TopD3PDBoosted/
$ cp -r /afs/* TopAnalysisBase/
$ rc find_packages
$ rc compile

Run TopD3PDBoosted

If everything goes smoothly, you should already be able to run a test job:
$ mkdir run
$ cd run
$ echo root:// > file_list.txt
$ cp ../TopD3PDAnalysis/data/settings.txt .
$  D3PD2MiniSLBoost -f file_list.txt -p settings.txt -mcType fullSim  -useTruthParticles -common -rndmType debug -resolved   -n 1000 -multipleOutFile 

Temporary fix to make it work in AnalysisTop-1.6.0 (not needed since AnalysisTop-1.8.0)

The problem appears to be in TopAnalysisBase. According to its svn log

r599600 | simon | 2014-05-30 15:26:41 +0200 (Fri, 30 May 2014) | 2 lines
Changed paths:
   A /PhysicsAnalysis/TopPhys/TopPhysUtils/TopAnalysisBase/tags/TopAnalysisBase-12-00-27 (from /PhysicsAnalysis/TopPhys/TopPhysUtils/TopAnalysisBase/trunk:599599)

testing memory leak fix

r599599 | simon | 2014-05-30 15:26:05 +0200 (Fri, 30 May 2014) | 2 lines
Changed paths:
   M /PhysicsAnalysis/TopPhys/TopPhysUtils/TopAnalysisBase/trunk/ChangeLog
   M /PhysicsAnalysis/TopPhys/TopPhysUtils/TopAnalysisBase/trunk/Root/TopData.cxx
   M /PhysicsAnalysis/TopPhys/TopPhysUtils/TopAnalysisBase/trunk/Root/TopNtupleSvc.cxx
   M /PhysicsAnalysis/TopPhys/TopPhysUtils/TopAnalysisBase/trunk/TopAnalysisBase/TopData.h

testing memory leak fix

r596938 | simon | 2014-05-14 09:46:22 +0200 (Wed, 14 May 2014) | 2 lines

a memory leak fix has been implemented. The problem appears to be in the destructor of TopData (in TopAnalysisBase/trunk/Root/TopData.cxx). TopData is essentially the product of a MakeClass and contains a lot of 'legacy' branches that don't exist anymore in the latest NTUP_COMMON. For this reason, if the destructor tries to delete the variables connected to these non-existant branches, a crash occours.

This can be temporary fixed by commenting out the offending lines in TopAnalysisBase//Root/TopData.cxx (lines 10179-10246), after having checked out the package via rc checkout_pkg atlasoff/PhysicsAnalysis/TopPhys/TopPhysUtils/TopAnalysisBase/tags/TopAnalysisBase-12-00-27

// delete jet_AntiKt10LCTopoTrimmed_E;
// delete jet_AntiKt10LCTopoTrimmed_pt;
// delete jet_AntiKt10LCTopoTrimmed_m;
// delete jet_AntiKt10LCTopoTrimmed_eta;
// delete jet_AntiKt10LCTopoTrimmed_phi;
// delete jet_AntiKt10LCTopoTrimmed_emscale_E;
// delete jet_AntiKt10LCTopoTrimmed_emscale_pt;
// delete jet_AntiKt10LCTopoTrimmed_emscale_m;
// delete jet_AntiKt10LCTopoTrimmed_emscale_eta;
// delete jet_AntiKt10LCTopoTrimmed_emscale_phi;
// delete jet_AntiKt10LCTopoTrimmed_constscale_E;
// delete jet_AntiKt10LCTopoTrimmed_constscale_pt;
// delete jet_AntiKt10LCTopoTrimmed_constscale_m;
// delete jet_AntiKt10LCTopoTrimmed_constscale_eta;
// delete jet_AntiKt10LCTopoTrimmed_constscale_phi;
// delete jet_AntiKt10LCTopoTrimmed_constit_n;
// delete jet_AntiKt10LCTopoTrimmed_constit_index;
// delete jet_AntiKt10LCTopoTrimmed_Electron_X;
// delete jet_AntiKt10LCTopoTrimmed_Electron_Y;
// delete jet_AntiKt10LCTopoTrimmed_Electron_Z;
// delete jet_AntiKt10LCTopoTrimmed_Electron_MINIISO;
// delete jet_AntiKt10LCTopoTrimmed_Electron_MINIISO10;
// delete jet_AntiKt10LCTopoTrimmed_Electron_DR;
// delete jet_AntiKt10LCTopoTrimmed_Electron_X_Prime;
// delete jet_AntiKt10LCTopoTrimmed_Electron_Y_Prime;
// delete jet_AntiKt10LCTopoTrimmed_Electron_Z_Prime;
// delete jet_AntiKt10LCTopoTrimmed_Electron_DR_Prime;
// delete jet_AntiKt10LCTopoTrimmed_Electron_contained;
// delete jet_AntiKt10LCTopoTrimmed_Electron_n;
// delete jet_AntiKt10LCTopoTrimmed_Electron_index;
// delete jet_AntiKt10LCTopoTrimmed_Muon_X;
// delete jet_AntiKt10LCTopoTrimmed_Muon_Y;
// delete jet_AntiKt10LCTopoTrimmed_Muon_Z;
// delete jet_AntiKt10LCTopoTrimmed_Muon_MINIISO;
// delete jet_AntiKt10LCTopoTrimmed_Muon_MINIISO10;
// delete jet_AntiKt10LCTopoTrimmed_Muon_DR;
// delete jet_AntiKt10LCTopoTrimmed_Muon_X_Prime;
// delete jet_AntiKt10LCTopoTrimmed_Muon_Y_Prime;
// delete jet_AntiKt10LCTopoTrimmed_Muon_Z_Prime;
// delete jet_AntiKt10LCTopoTrimmed_Muon_DR_Prime;
// delete jet_AntiKt10LCTopoTrimmed_Muon_contained;
// delete jet_AntiKt10LCTopoTrimmed_Muon_n;
// delete jet_AntiKt10LCTopoTrimmed_Muon_index;
// delete jet_AntiKt10LCTopoTrimmed_EtaOrigin;
// delete jet_AntiKt10LCTopoTrimmed_PhiOrigin;
// delete jet_AntiKt10LCTopoTrimmed_MOrigin;
// delete jet_AntiKt10LCTopoTrimmed_LCJES;
// delete jet_AntiKt10LCTopoTrimmed_LCJES_EtaCorr;
// delete jet_AntiKt10LCTopoTrimmed_LCJES_MassCorr;
// delete jet_AntiKt10LCTopoTrimmed_Parent_n;
// delete jet_AntiKt10LCTopoTrimmed_Parent_index;
// delete jet_AntiKt10LCTopoTrimmed_Tau1;
// delete jet_AntiKt10LCTopoTrimmed_Tau2;
// delete jet_AntiKt10LCTopoTrimmed_Tau3;
// delete jet_AntiKt10LCTopoTrimmed_SPLIT12;
// delete jet_AntiKt10LCTopoTrimmed_SPLIT23;
// delete jet_AntiKt10LCTopoTrimmed_SPLIT34;
// delete jet_AntiKt10LCTopoTrimmed_ZCUT12;
// delete jet_AntiKt10LCTopoTrimmed_ZCUT23;
// delete jet_AntiKt10LCTopoTrimmed_ZCUT34;
// delete jet_AntiKt10LCTopoTrimmed_QW;
// delete jet_AntiKt10LCTopoTrimmed_PullMag;
// delete jet_AntiKt10LCTopoTrimmed_PullPhi;
// delete jet_AntiKt10LCTopoTrimmed_Pull_C00;
// delete jet_AntiKt10LCTopoTrimmed_Pull_C01;
// delete jet_AntiKt10LCTopoTrimmed_Pull_C10;
// delete jet_AntiKt10LCTopoTrimmed_Pull_C11;
// delete jet_AntiKt10LCTopoTrimmed_WIDTH;

-- MarinoRomano - 28 Aug 2014

Topic attachments
I Attachment History Action Size Date Who Comment
Texttxt r1 manage 0.3 K 2014-08-28 - 12:11 MarinoRomano  
Unknown file formatcxx BoostedCorrections.cxx r1 manage 7.4 K 2014-08-28 - 12:28 MarinoRomano  
Texttxt r1 manage 22.8 K 2014-08-28 - 12:11 MarinoRomano  
Texttxt r1 manage 36.1 K 2014-08-28 - 12:11 MarinoRomano  
Edit | Attach | Watch | Print version | History: r10 < r9 < r8 < r7 < r6 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r10 - 2014-10-27 - RiccardoDiSipio
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback