-- MatteoBedognetti - 2017-02-08

Branches

See gitlab for all the branches. In April 2017 I split to start working with Athena release 21. At this point the branch Release20, is supposed to continue for "older" samples.
  • master (Base 2.5.0 on April 19 2017) for Athena release 21 it is soon going to be a separate git-commit, because of the fundamental change in structure
  • Release20 (Base 2.4.29 on April 19 2017) to keep working with Athena release 20

Scripts

Here put a list of your scripts. These should probably be put inside the scripts/ folder of myXAODAnalysis, to be properly organized.

Executables and Bash scripts (wrappers)

  • runMC runs the main EventLoop algorithm on the current machine. It needs the directory of the sample one wants to run over. Options used are:
    • -HF To run the Hevy Flavour variation of the analysis (does not affect content of the ntuple generated)
    • -n Sets the max number of events to run over (useful for fast tests)
    • -pattern or -filter limits the input files to the ones obeying this pattern recognition. Can use wildcards. Default is "*". But files are filtered to ensure they have ".root" in their name and that they do not have ".part" to avoid running on files which are being downloaded and are thus currently corrupt.
    • -o set the output folder's name. Outputs will be stored there, with exception of a copy of the current cut-flow printout, which will end up in the base directory (cutList_dump.txt).

  • RUNLOCAL should be called instead of runMC, as it double checks that there are no changes left to compile it also adds a few options and the use of "fileLists". Based on these the outputs (ntuple in primis) will be renamed and put in the "compareDir" folder.
    • -hf or -HF (see runMC)
    • -n or --numevents (see runMC)
    • -o or -d or --outdir (see runMC)
    • --pattern or --filter (see runMC)
    • -b Stops outputs from being moved to the compareDir folder (note that they will not assume the label as a name)
    •  -f <fileList_file>= or =--filelist <fileList_file> 
      VERY IMPORTANT the fileList file with the samples to run over (see section further down)

  • listMissing Very useful executable to correct for files which have faied running on stoomboot. If one ran ntuple making with RUNSTBC -p, and therefore has a filled .auto_retrieve_info file it is sufficient to run the script without arguments to obtain a list of all "segments" which were not processed, and the list of files which have been missed. Adding arguments will change what the executable does:
    •  -d <directory> 
      This will check for files which have been missed when submitting a job whose output is requested to go inside that folder.
    • --prepare-rerun This translates the list of missing files into a fileList file and folders with soft links to all missed files. After this, one can run on the missed files submitting the provided fileList file to RUNSTBC.
    •  --collect <rerun_folder> 
      This will overrule --prepare-rerun , and will fix the output folder inserting the re-run files which have processed and put in this output folder.
So what one should do is: check one's outputs for missing files running listMissing
if this returns something call listMissing --prepare-rerun
setup a running over the generated fileList file
run listMissing --collect to restore the files which were missed
See if now all samples have been processed re-running lsitMissing

Scripts for collecting outputs

Packages

myAnalysis

Tau3MuMethods

Fundamental Logic of the code

fileList files

My code makes use of these files to keep track of which samples one wants to run over. In general it is meant that the code run over a series of samples, and later plotting will merge histograms for all of them
The format is as follows:
#comment
/path_to_sample/sampleA
-/path_to_deactivated_sample/deactivated_sampleB

LABELS

#comment that can be put anywhere
label_for_sampleA
label_for_sampleB

Note that samples are deactivated putting a "-" (dash or minus) in front of the path. This "deactivates" this sample without any need to remove the corresponding label.
Labels are meant to be a reference to the sample of interest, to track it through ntuple making and after that. The generated ntuple will be called
 tree_<label>.root 

Setup

Downloading from gitlab:

git init
git remote add origin <url>
git fetch
git checkout master

To setup, please delete any remaining RootCore and RootCoreBin folder, then do
setupATLAS
rcSetup Base,
rc find_packages

at this point you probably need to re-enter from a new shell.
Now you can simply run
bash setup.sh

Edit | Attach | Watch | Print version | History: r6 < r5 < r4 < r3 < r2 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r6 - 2017-05-13 - unknown
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2024 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