Top Banner
May 25, 2007 1 ALICE Offline Tutorial Markus Oldenburg – CERN [email protected] May 25, 2007 – University of São Paulo
56

May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN [email protected] May 25, 2007 – University of São Paulo.

Mar 27, 2015

Download

Documents

Mia Hodges
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 1

ALICE Offline Tutorial

Markus Oldenburg – [email protected]

May 25, 2007 – University of São Paulo

Page 2: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 2

ALICE Offline Tutorial

F.Carminati, P.Christakoglou, J.F.Grosse-Oetringhaus, P.Hristov, A.Peters, P.Saiz

April 13, 2007 – v1.3

based on:

Page 3: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 3

Part VI: Analysis on the GRID

available online at: http://cern.ch/Oldenburg -> Seminars

Page 4: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 4

Flow of the overall analysis procedure.

New analysis framework

Local analysis:

Creation of tag files.

Local analysis using the Event Tag System.

Interactive analysis with AliEn stored files.

Batch analysis:

Flow of the procedure.

Description of the files needed.

Description of the jdl fields.

Practical examples.

Outline

Page 5: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 5

AliAnalysisDataContainer:Class that allows the user to define the basic input/output containers.Three types of containers: input, transient and output.

AliAnalysisTask:Implementation of the actual analysis code that processes input data.

AliAnalysisManager:Definition of all data containers that will assembly the analysis.Definition of tasks.Definition of the relationships between the tasks and the containers.

Andrei Gheatahttp://indico.cern.ch/materialDisplay.py?

contribId=19&sessionId=3&materialId=slides&confId=a056304

Framework – Main classes

Page 6: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 6

AliAnalysisManagerTObjArray *fContainers

TObjArray *fTasks

Cont2*

task1 task2 task3

Cont1*

cont3

cont4

task4

cont6

task5

Framework – Data flow structure

Page 7: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 7

Loop overchain entries

Output of mixing

AOD

Real/Simulatedmixing

Real/Simulated mixed output(root file with histos

and objects)

OUT2

Input chain

Loop overchain entries

Real/Simulatedmixing analysis

Real/Simulated output(root file with histos

and objects)

OUT1

Real/Simulatedanalysis

Comparison of OUT1 & OUT2Collection of files

Input chain

TAGS

Framework – A practical example

Page 8: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 8

Collection of files

TAGS

OutputContainer1

ROOT filefrom analysis

TASK 1

analysisInput

Container1

CHAIN

OutputContainer2

AOD

TASK 2

mixing

InputContainer2

CHAIN (from AOD)

TASK 3

Mixing analysis

OutputContainer3

ROOT filefrom mixing

analysis

OutputContainer4

Comparison

TASK 4

Comparison

Framework – Integration in the framework

Page 9: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 9

Framework – Example of a manager

Page 10: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 10

Framework – Example of a task

Page 11: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 11

Query the file catalog

PROOF

AliEn

Local

Tag xml collectio

n

Process chain with a

manager

Selection criteria

Query the Event Tag

System

User's macro

Create an esdTree

chain

Extract an esd xml

collection

Analysis – Flow of the analysis procedure

Page 12: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 12

Analysis – Event Tag System

Page 13: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 13

t->SetStorage(0);

t->ReadLocalCollection(“/home/pchrist/PDC06/pp14TeV/”);

t->MergeTags();

Setup par archiveLoad the needed libraries

AliTagCreator *t = new AliTagCreator();

Local analysis – Creation of tag files

Page 14: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 14

Setup par archiveLoad the needed libraries

AliRunTagCuts *RunCuts = new AliRunTagCuts();AliEventTagCuts *EvCuts = new AliEventTagCuts();EvCuts->SetMultiplicityRange(0,1500);

AliTagAnalysis *TagAna = new AliTagAnalysis();TagAna->ChainLocalTags(“.”);

analysischain = TagAna->QueryTags(RunCuts,EvCuts);

const char *selectorfile = "esdPt.C";analysischain->Process(selectorfile);

Local analysis – Local analysis with tags I

The query of the Event Tag System can be done by:Using the AliRunTagCuts and AliEventTagCuts objectsUsing string statements (“(fEventTag.fNumberOfTracks > 0)&&(fEventTag.fNumberOfTracks < 1500)”)

Page 15: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 15

Setup par archiveLoad the needed libraries

AliRunTagCuts *RunCuts = new AliRunTagCuts();AliEventTagCuts *EvCuts = new AliEventTagCuts();EvCuts->SetMultiplicityRange(0,1500);

AliTagAnalysis *TagAna = new AliTagAnalysis();TagAna->ChainLocalTags(“.”);TChain *analysischain = TagAna->QueryTags(RunCuts,EvCuts);AliAnalysisManager *manager = new AliAnalysisManager();AliAnalysisTaskPt *task = new AliAnalysisTaskPt(“TaskPt”);manager->AddTask(task);

manager->StartAnalysis(“local”,analysischain);

AliAnalysisDataContainer *cinput1 = manager->CreateContainer("cchain1",TChain::Class(),AliAnalysisManager::kInputContainer);AliAnalysisDataContainer *coutput1 = manager->CreateContainer("chist1", TH1::Class(),AliAnalysisManager::kOutputContainer,"Pt.ESD.root");manager->ConnectInput(task,0,cinput1);manager->ConnectOutput(task,0,coutput1);cinput1->SetData(chain1);

Local analysis – Local analysis with tags II

Page 16: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 16

Open your local $HOME/AliEn/Tags/CreateTags.C file and modify it accordingly:

Change the line where you define where you have the locally stored ESDs.

Run the runTagCreator.C macro to create the tag files with alienroot.

Delete the single tag files and stay with just the merged one.

Go to your local $HOME/AliEn/Local/ESD directory and open the demoLocal.C file.

Change the line where you define the location of the tag files and run the runESDAnalysis.C macro with alienroot.

Impose some selection criteria and rerun the example.

Local analysis – Try it out I

Page 17: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 17

Go to your local $HOME/AliEn/Local/Kine directory and open the demoLocal.C file.

Change the line where you define the location of the tag files and run the runKineAnalysis.C macro with aliroot.

Impose some selection criteria and rerun the example.

Local analysis – Try it out II

Exercise 1: Access of the ESD information

Exercise 2: Access of both the ESD and the Kinematic informationThese examples can also be found in:

$ALICE_ROOT/PWG2/AnalysisMacros/Local (ESD analysis)$ALICE_ROOT/PWG2/AnalysisMacros/Kine (Kine+ESD analysis)

Page 18: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 18

Setup par archiveLoad the needed libraries

AliRauTagCuts *RunCuts = new AliRunTagCuts();AliEventTagCuts *EvCuts = new AliEventTagCuts();EvCuts->SetMultiplicityRange(0,1500);

AliTagAnalysis *TagAna = new AliTagAnalysis();TagAna->ChainGridTags(TagResult);

TChain *analysischain = TagAna->QueryTags(RunCuts,EvCuts);AliAnalysisManager *manager = new AliAnalysisManager();AliAnalysisTaskPt *task = new AliAnalysisTaskPt(“TaskPt”);manager->AddTask(task);

Manager->StartAnalysis (“local”,analysischain);

Same code as in three pages back

TGrid::Connect("alien://”);

TAlienCollection* coll = TalienCollection::Open("tag100.xml");TGridResult* TagResult = coll->GetGridResult("”,0,0);

Interactive analysis – Using the tags

Page 19: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 19

Copy the following AliEn files to your local $HOME/AliEn/Interactive/ESD:

/alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/ESD/runESDAnalysis.C

/alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/ESD/demoInteractive.C

You should also get the ESD.par, ANALYSIS.par, AliAnalysisTaskPt.h and

AliAnalysisTaskPt.cxx from the directory of the previous exercise (you

already have them locally).

Go to your local $HOME/AliEn/Interactive/ESD directory and open the demoInteractive.C file.

Change the line where you define the tag collection and put the name of the file you created by querying the f.c (it should be tag.xml).

Run the runESDAnalysis.C macro with alienroot – Impose some selection criteria and rerun the example.

Interactive analysis – Try it out I

Page 20: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 20

Copy the following AliEn files to your local $HOME/AliEn/Interactive/Kine:

/alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/Kine/runKineAnalysis.C

/alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/Kine/demoInteractive.C

You should also get the AliAnalysisTaskRLPt.h and

AliAnalysisTaskRLPt.cxx from the directory of the previous exercise

(you already have them locally).

Go to your local $HOME/AliEn/Interactive/Kine directory and open the demoInteractive.C file.

Change the line where you define the tag collection and put the name of the file you created by querying the f.c (it should be tag.xml).

Run the runKineAnalysis.C macro with alienaliroot – Impose some selection criteria and rerun the example.

Interactive analysis – Try it out II

These examples can also be found in:

$ALICE_ROOT/PWG2/AnalysisMacros/Interactive (ESD analysis)$ALICE_ROOT/PWG2/AnalysisMacros/Kine (Kine+ESD analysis)

Page 21: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 21

<collection> <event>...guid=”asdf1”...lfn=”/alice/cern.ch/.../file1.root” <event>...guid=”asdf2”...lfn=”/alice/cern.ch/.../file2.root” <event>...guid=”asdf3”...lfn=”/alice/cern.ch/.../file3.root”</collection>

F.C. query

JDL::InputDataCollectionJob Optimiser Splitting

<collection1> <event> lfn=”/alice/.../file1.root”</collection1>

<collection1> <event> lfn=”/alice/.../file2.root”</collection1>

<collection1> <event> lfn=”/alice/.../file3.root”</collection1>

JDL::InputData JDL::InputData JDL::InputData

JOB ANGENT

ROOT

XROOTD

MSS

TAlienCollection

SITE A

ROOT execution

TAlienCollection

SITE B

ROOT execution

TAlienCollection

SITE C

ROOT execution

Batch analysis – Flow of batch analysis

Page 22: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 22

GUID-LFNEventList

Global Chain

C

C2+E2C1+E1 C3+E3

OptimiserSplitting

Job agents

Job agents

LFN-GUIDEventList

LFN-GUIDEventList

LFN-GUIDEventList

Event listdoesn’t get

lostduring

splitting

InputData in new xml

Lfnevlist

lfnevlist

lfnevlist

Batch analysis – Analysis flow with tags

Page 23: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 23

Batch analysis – Creating a new xml file

Setup par archiveLoad the needed libraries

AliRauTagCuts *RunCuts = new AliRunTagCuts();AliEventTagCuts *EvCuts = new AliEventTagCuts();EvCuts->SetMultiplicityRange(0,1500);

AliTagAnalysis *TagAna = new AliTagAnalysis();TagAna->ChainGridTags(TagResult);

TagAna->CreateXMLCollection(“global”,RunCuts,EvCuts);

TGrid::Connect("alien://”);

TAlienCollection* coll = TalienCollection::Open("tag.xml");TGridResult* TagResult = coll->GetGridResult("”,0,0);

The old xml collection (tag.xml) has information about the tag files that are qoing to be queried.The new xml collection (global.xml) has information about the ESDs that are going to be analyzed.

You need to use the tags in a batch session because:

They reduce your analysis time which allows you to lower your TTL (see next slides) and thus make sure that your job starts early enough (jobs are ordered by TTL). They provide the analyzed data in the proper format (TChain + TEntryLists) in a totally transparent way.

Page 24: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 24

ExecutableIt should launch root in case you analyze ESDs.

It should launch aliroot in case you access the Kinematics.root as well.

Par fileEffective in case you read ESDs

Not needed in case you need to access the MC “truth”.

Macro

Selectors/Tasks

xml collection

jdl

Batch analysis – Files for batch analysis

Page 25: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 25

#!/bin/bash

echo

===========================

echo $PATH

echo $ROOTSYS

echo $LD_LIBRARY_PATH

echo

==========================

root -b -x Analysis.C;

IT SHOULD BE STORED UNDER

$HOME/bin IN THE FILE CATALOG!!!

Batch analysis - Executable

Page 26: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 26

Batch analysis - Macro

Setup the par file (in case you read ESDs only) – compile and load the libESD.so (or any necessary library that is needed for the analysis).

Get the xml collection.

Convert the collection to a list of files.

Process the chain with the selector or an AliAnalysisManager.

Page 27: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 27

Executable: Compulsory field where we give the lfn of the executable that should be stored in /bin or $V0/bin or $HOME/bin.

Arguments: They will be passed to the executable.

Packages: Type packages in the shell to see what kind of packages are installed.

InputFile: The files that will be transported to the node where the job will run.

InputData: It will require that the job will be executed in a site close to the files specified here.

InputDataList: The filename in which the Job Agent will write the InputData list.

InputDataListFormat: The format of the InputData list.

Batch analysis – JDL fields I

Page 28: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 28

OutputFile: The files that will be registered in the catalog once the job finishes.

OutputArchive: What files will be archived in a zip file.

Validationcommand: Specifies the script to be used as a validation script.

Email: Receive a mail when the job finishes.

TTL: The maximum run time of your job.

Split: Split the jobs in several sub jobs.

Batch analysis – JDL fields II

Page 29: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 29

Batch analysis – Job status

Page 30: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 30

If everything is ok with your jdl then your job is submittedand a <JOBID>.is assigned to it.You get a submission error message if:i)a file listed in the jdl is missingii)a package defined in the jdl is not listed in the packman

Batch analysis – Submitting jobs

Page 31: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 31

Batch analysis – Checking the job status I

Page 32: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 32

Batch analysis – Checking the job status II

Page 33: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 33

Batch analysis – Checking the priority

Page 34: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 34

Batch analysis – Checking the job output I

Page 35: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 35

Batch analysis – Checking the job output II

Page 36: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 36

The output of every splited job is listed under:

/proc/$username/$JOBID if the OutputDir is not defined in the jdl.

OutputDir if it is defined in the jdl.

In order to merge the several output files you have to run a post process:

You can find the macro that deals with this under /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/histomerge.C

[bash]$ alienroot

root [0] .L histomerge.C

root [1] histomerge($OutputDirPath,$pattern,$mergefile)

Batch analysis – Merging the output

OutputDir: is the output directory of the master job (jdl)

Pattern: the zip file that you create in your selector

Mergefile: the desired locally stored merge file

Page 37: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 37

Copy the following AliEn files to your local

$HOME/AliEn/Batch:

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/tag.xml

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/ESD.par

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/runXML.C

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/CreateXML.C

Go to your local working directory and run the runXML.C

macro with alienroot to create the xml collection.

Batch analysis – Try it out I

Page 38: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 38

Copy the local file global.xml that we just created to your

AliEn $HOME/Tutorial/ESD.

Copy the following AliEn files to your AliEn

$HOME/Tutorial/ESD:

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/ESD.par

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/ANALYSIS.par

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskPt.h

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskPt.cxx

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/runESDAnalysis.C

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/demoESDBatch.C

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/analysisESD.jdl

Batch analysis – Try it out II

Page 39: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 39

Copy the following AliEn files to your AliEn $HOME/bin:

/alice/cern.ch/user/p/pchrist/bin/root.sh

While being in the AliEn shell, edit the analysisESD.jdl

and modify the InputFile, InputDataCollection,

InputDataListFormat and OutputDir fields.

Once finished, submit your batch job by typing:

“submit analysisESD.jdl”

Batch analysis – Try it out III

These examples can also be found in:

$ALICE_ROOT/PWG2/AnalysisMacros/Batch (ESD analysis)

Page 40: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 40

Copy the following AliEn files to your AliEn $HOME/Tutorial/Kine:

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskRLPt.h

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskRLPt.cxx

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/runKineAnalysis.C

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/demoKineBatch.C

/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/analysisKine.jdl

Copy the following AliEn files to your AliEn $HOME/bin:

/alice/cern.ch/user/p/pchrist/bin/aliroot.sh

Edit the analysisKine.jdl and modify the InputFile,

InputDataCollection, InputDataListFormat and OutputDir fields.

Once finished, submit your batch job by typing:

“submit analysisKine.jdl”

Batch analysis – Try it out IV

These examples can also be found in:

$ALICE_ROOT/PWG2/AnalysisMacros/Kine (Kine+ESD analysis)

Page 41: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 41

Check your job priority by typing: “queue priority jobs $username”.

Display the jdl of your job by typing: “ps -jdl $jobid”.

Trace the status of your job by typing: “ps -trace $jobid”.

When the job 's status turns to RUNNING you can get the stdout and stderr of the job by typing:

“spy $jobid stdout”.“spy $jobid stderr”.

Once the job is finished, merge the output and store it locally as Pt.Merged.root

Batch analysis – Try it out V

Page 42: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 42

Registration – Certificates:

http://alien.cern.ch/twiki/bin/view/Alice/UserRegistration

https://ca.cern.ch/ca/

AliEn:

http://alien.cern.ch

Gshell:

http://alien.cern.ch/twiki/bin/view/AliEn/GAPI

User's guide:

http://project-arda-dev.web.cern.ch/project-arda-dev/alice/

apiservice/AA-UserGuide-0.0m.pdf

References I

Page 43: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 43

aliensh Grid Command Online Reference V1.0

http://project-arda-dev.web.cern.ch/project-arda-dev/alice/apiservice/guide/guide-1.0.htm

Previous tutorials:

http://aliceinfo.cern.ch/Offline/Analysis/Tutorial/

Event Tag System:

http://pcaliweb02.cern.ch/Offline/Analysis/

RunEventTagSystem/EventTags.html#Event%20tag

%20system

https://edms.cern.ch/document/788315/1 (INTERNAL

NOTE)

References II

Page 44: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 44

Creation of tag files:

http://pcaliweb02.cern.ch/Offline/Analysis/

RunEventTagSystem/

EventTagsCreation.html#Create%20tags%20howto

Analysis using the Event Tag System:

http://pcaliweb02.cern.ch/Offline/Analysis/

RunEventTagSystem/

EventTagsAnalysis.html#Analysis%20with%20tags

References III

Page 45: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 45

File catalog structure – Queries:

http://pcaliweb02.cern.ch/Offline/Analysis/

RunEventTagSystem/RunTags.html#Run/File

%20metadata

File level metadata:

http://cern.ch/Oldenburg/MetaData/MetaData.doc

Analysis framework

http://indico.cern.ch/materialDisplay.py?

contribId=19&amp;sessionId=3&amp;materialId=slides

&amp;confId=a056304

References IV

Page 46: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 46

BACKUP

AliEn Exercises

Page 47: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 47

AliEn Tutorial

Solutions

Panos Christakoglou

University of Athens - CERN

Page 48: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 48

1. Open your local $HOME/AliEn/Tags/CreateTags.C file and modify it accordinglyt->ReadLocalCollection("/home/trn2301/AliEn/PDC06");

2. Run it to create the tag files.[bash]$ alienroot -b -q CreateTags.C

3. Delete the single tag files and stay with just the merged one.[bash]$ rm Run100.Event*

4. Go to your local $HOME/AliEn/Local/ESD directory and open the demoLocal.C file.Change the line where you define the location of the tag files and run the macro.TagAna->ChainLocalTags(“/home/trn2301/AliEn/Tags”);[bash]$ alienroot runESDAnalysis.C

5. Impose some selection criteria inside the macro and rerun the example.EvCuts->SetMultiplicityRange(10,15);

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file

Local analysis – Try it out I

Page 49: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 49

6. Go to your local $HOME/AliEn/LocalKine directory and open the demoLocal.C file. Change the line where you define the location of the tag files and run the macro.TagAna->ChainLocalTags(“/home/trn2301/AliEn/Tags”);[bash]$ alienaliroot runKineAnalysis.C

7. Impose some selection criteria inside the macro and rerun the example.EvCuts->SetMultiplicityRange(10,15);

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file

Local analysis – Try it out II

Page 50: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 50

1. Copy the following AliEn files to your local $HOME/AliEn/Interactive/ESD: /alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/ESD/runESDAnalysis.C and /alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/ESD/demoInteractive.C[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/ESD file:/home/trn2301/AliEn/Interactive

2. You should also get the ESD.par, ANALYSIS.par, AliAnalysisTaskPt.h and AliAnalysisTaskPt.cxx from the directory of the previous exercise (you already have them locally). [bash]$ cp $HOME/trn2301/AliEn/Local/ESD/AliAnalysisTaskPt.* $HOME/trn2301/AliEn/Interactive/ESD/[bash]$ cp $HOME/trn2301/AliEn/Local/ESD/*.par $HOME/trn2301/AliEn/Interactive/ESD/

3. Go to your local $HOME/AliEn/Interactive/ESD directory and open the demoInteractive.C file. Change the line where you define the tag collection and put the name of the file you created by querying the f.c (it should be tag.xml).TagAna->ChainGRIDTags(“tag.xml”)

4.Run the runESDAnalysis.C macro with alienroot – Impose some selection criteria and rerun the example.[bash]$ alienroot runESDAnalysis.C

Interactive analysis – Try it out I

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file

Page 51: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 51

5. Copy the following AliEn files to your local $HOME/AliEn/Interactive/Kine:/alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/Kine/runKineAnalysis.C and/alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/Kine/demoInteractive.C[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/INTERACTIVE/Kine file:/home/trn2301/AliEn/Interactive

6. You should also get the AliAnalysisTaskRLPt.h and AliAnalysisTaskRLPt.cxx from the directory of the previous exercise (you already have them locally). [bash]$ cp $HOME/trn2301/AliEn/Local/Kine/AliAnalysisTaskPtRL.* $HOME/trn2301/AliEn/Interactive/Kine/

7. Go to your local $HOME/AliEn/Interactive/Kine directory and open the demoInteractive.C file. Change the line where you define the tag collection and put the name of the file you created by querying the f.c (it should be tag.xml).TagAna->ChainGRIDTags(“tag.xml”)

8. Run the runKineAnalysis.C macro with alienaliroot – Impose some selection criteria and rerun the example.[bash]$ alienroot runESDAnalysis.C

Interactive analysis – Try it out II

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file

Page 52: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 52

1. Copy the following AliEn files to your local $HOME/AliEn/Batch:/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/tag.xml - ESD.par - runXML.C - CreateXML.C[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/tag.xml file:/home/trn2301/AliEn/BATCH[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/ESD.par file:/home/trn2301/AliEn/BATCH[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/runXML.C file:/home/trn2301/AliEn/BATCH[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/CreateXML.C file:/home/trn2301/AliEn/BATCH

2. Go to your local working directory and run the runXML.C macro with alienroot to create the xml collection.[aliensh]$ exit[bash]$ alienroot -b -q runXML.C

Batch analysis – Try it out I

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file

Page 53: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 53

3. Copy the local file global.xml that we just created to your AliEn $HOME/Tutorial/ESD.[aliensh]$ cp file:/home/trn2301/AliEn/BATCH/global.xml Tutorial/ESD/global.xml

4. Copy the following AliEn files to your AliEn $HOME/Tutorial/ESD:/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/ESD.par-ANALYSIS.par-AliAnalysisTaskPt.h-AliAnalysisTaskPt.cxx-runESDAnalysis.C-demoESDBatch.C-analysisESD.jdl[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/ESD.par Tutorial/ESD/ESD.par[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/ANALYSIS.par Tutorial/ESD/ANALYSIS.par[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskPt.h Tutorial/ESD/AliAnalysisTaskPt.h[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskPt.cxx Tutorial/ESD/AliAnalysisTaskPt.cxx[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/runESDAnalysis.C Tutorial/ESD/runESDAnalysis.C[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/demoBatch.C Tutorial/ESD/demoBatch.C[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/analysisESD.jdl Tutorial/ESD/analysisESD.jdl

Batch analysis – Try it out II

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file

Page 54: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 54

5. Copy the following AliEn files to your AliEn $HOME/bin: /alice/cern.ch/user/p/pchrist/bin/root.sh[aliensh]$ cp /alice/cern.ch/user/p/pchrist/bin/root.sh $HOME/bin/root.sh

6. While being in the AliEn shell, edit the analysisESD.jdl and modify the InputFile, InputDataCollection, InputDataListFormat and OutputDir fields.[aliensh]$ edit analysisESD.jdl

7. Once finished, submit your batch job.[aliensh]$ submit analysisESD.jdl

Batch analysis – Try it out III

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file

Page 55: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 55

8. Copy the following AliEn files to your AliEn $HOME/Tutorial/Kine:/alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskRLPt.h-AliAnalysisTaskRLPt.cxx-runKineAnalysis.C-demoKineBatch.C-analysisKine.jdl[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskPtRL.h Tutorial/ESD/AliAnalysisTaskRLPt.h[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/AliAnalysisTaskRLPt.cxx Tutorial/ESD/AliAnalysisTaskRLPt.cxx[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/runKineAnalysis.C Tutorial/ESD/runKineAnalysis.C[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/demoKineBatch.C Tutorial/ESD/demoKineBatch.C[aliensh]$ cp /alice/cern.ch/user/p/pchrist/Tutorial/BATCH/analysisKine.jdl Tutorial/ESD/analysisKine.jdl

9. Copy the following AliEn files to your AliEn $HOME/bin: /alice/cern.ch/user/p/pchrist/bin/aliroot.sh[aliensh]$ cp /alice/cern.ch/user/p/pchrist/bin/aliroot.sh $HOME/bin/aliroot.sh

10. Edit the analysisKine.jdl and modify the InputFile, InputDataCollection, InputDataListFormat and OutputDir fields.[aliensh]$ edit analysisKine.jdl

11. Once finished, submit your batch job.[aliensh]$ lubmit analysisKine.jdl

Batch analysis – Try it out IV

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file

Page 56: May 25, 20071 ALICE Offline Tutorial Markus Oldenburg – CERN Markus.Oldenburg@cern.ch May 25, 2007 – University of São Paulo.

May 25, 2007 56

12. Once the job is finished, merge the output and store it locally as Pt.Merged.root

[bash]$ alienroot[root] [0] .L histomerge.C[root] [1] histomerge(“/alice/cern.ch/user/t/trn2301/Tutorial/ESD/output/*”,”root_archive.zip”,”Pt.Merged.root”)

Batch analysis – Try it out V

[bash]$ --> Your local bash shell[aliensh]$ --> Your alien bash shellNo notation --> inside a file