The ATLASWatchMan Work-Flow
Introduction
The package is mainly an Analysis Code Generator and a
D3PD Maker.
A brief description of the Work-Flow follows. More detailed information will be given in subsections of this website, when dealing with implementing analyses, adding UserData, dumping objects from POOL files, defining custom object selection or overlap removal for each analysis or reading the output
D3PD file.
Fig. 1 The ATLASWatchMan Work-Flow: from the user-edited steering file , to the automatically generated Analysis Code to be run to produce the output D3PD containing all the results for all the analyses the user defined.
|
Examples:
The input: the Steering File
The input of the package is a
steering file . Or a list of them if you want to merge different
steering files .
In the
steering file the user can define:
- his/her analyses, as many as he/she wants (defining for each of them event selection cuts, object selection/overlap removal)
- objects to dump out from AOD, DPD, ... (POOL files)
- Branch to store UserData...
- ...filled with user-defined formulas, defined in the steering file as well
Here you can find an example of
steering file, used to automatically generate the analysis code below:
ATLASWatchManAnalysisSteeringFileExample
And here (
ATLASWatchManSteeringFile) you can find many other information about the ATLASWatchMan
steering file
The output: the dynamically generated Analysis Code
The package has twol levels of output:
- first it generates the Analysis Code, together with the scripts to run it.
- At second level, running the generated code, the package produces a flat ntuple (D3PD) containing all the the results for all the analyses the user defined in the steering file .
The
Analysis Code is automatically and dynamically generated from the user settings in the
steering file.
In Fig. 2 a schema of the generated
Analysis Code is provided. The first and last part of the code is the usual interface to the ATLAS framework (Athena or ARA), while the other parts of the code are dynamically generated:
- In the steering file the user can define a list of as many analyses he/she wants, each with its own custom cuts. From those, the event loop of the analysis code is built: it contains all the event selection cuts for all the analyses/channels;
- the user can specify custom object selection / overlap removal cuts per channel , if he/she wishes. Thus the object selection part of the code is customized per channel, and within a channel (for evaluating the cuts or compute UserData formulas) only those objects passing the particular object selection are taken into account;
- formulas to compute UserData can be added in the steering file and from those the code to use them and compute the quantities is dynamically generated.
Fig. 2 The automatically generated Analysis Code: the coloured parts of the code are dynamically generated from the user-defined settings in the steering file .
|
Together with the Analysis Code,
ATLASWatchMan generates customized Athena and ARA jobOptions as well, to run the Analysis Code locally, and Panda and Ganga scripts to run the code on the Grid, over the datasets the user can specify in the
steering file .
Fig. 3 The ATLASWatchMan core dinamically generates many files, for the analysis and the bookkeeping.
|
The ouput Data File: the ATLASWatchMan D3PD
After the code generation with the
ATLASWatchMan Parser, you get an Analsyis Code, based on all your settings, and ready to be run!!
The output of this automatically generated Analysis Code is then stored in a flat ROOT Ntuple following a certain model, the ATLASWatchMan
D3PD model.
..... coming soon....
--
RiccardoMariaBianchi - 11 Mar 2009