16
ANALYSIS Package Offline Week Piotr Krzysztof Skowroński 30 June 2004

ANALYSIS Package

  • Upload
    lawson

  • View
    30

  • Download
    3

Embed Size (px)

DESCRIPTION

ANALYSIS Package. Offline Week Piotr Krzysztof Skowroński 30 June 200 4. AOD. A nalysis O bject D ata Similar to ESD but Contains data needed to analysis ony Designed for efficiency of the analysis. AliVAODParticle. Virtual AOD Particle pure virtual class - PowerPoint PPT Presentation

Citation preview

ANALYSISPackage

Offline Week Piotr Krzysztof Skowroński30 June 2004

2 Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

AOD

Analysis Object DataSimilar to ESD but Contains data needed to analysis ony Designed for efficiency of the analysis

3 Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

AliVAODParticleVirtual AOD Particle pure virtual class

Analyses can differ in preferable internal representation of a particle properties

pt, , px, py, pz

Analyses should depend only on the interface defined by AliVAODParticle

Given analysis specific particle should not extend functionality of a particle

If such needed, proper method should be defined in VAODParticle

Still guarantee that one analysis can always be run on data prepared for other analysis

Even if less efficient Provides all the interfaces needed for accessing

any property

4 Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

AliAODParticle

Concretized varsion of a particle class based on px, py, pz reprezentation

5 Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

AliRunAnalysis cont...Implements loop over eventsTakes data from a reader (AliReader)Reader provides 2 pointers to AODs

Reconstructed and (eventually if demanded) Simulated

These two AODs have „parallel” structure Nth particle in simulated event corresponds to nth in the

reconstructed one Comfortable for any comparisons and resolution analyses

One track can appear more than ones in AOD in two different incarnations f.g ones as pion and ones as kaon In order to recognize them, particles are given UID

(unique ID)

RunAnalysis checks AOD against the event cut Implemented by AliEventCut

6 Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

AliAnalysis: base class for analyses

Analysis has to provide 3 methods Init ProcessEvent(AliAOD* rec,AliAOD*sim=0) Finish

Analysis is a task AliAnalysis inherits from TTask Identified by unique names Under Developement: Specification what

requires and what provides This way AliRunAnalysis can correctly order the

execution and check if there is no circular dependencies between analyses

7 Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

Output data

Currently each analysis is responsible for writing its results to file Done in a macro

Output data can be stored in folders Other analyses can find there data

which they require Writing results can be managed by

AliRunAnalysis

8 Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

CutsDesign of all cuts is similarCut contains list of „Base Cuts”„Base Cut” implements a cut on a single property„Base Cuts” that perform logical operations on others „base cuts” F.g.: AliAODOrPairCut Allows to create tree structure that implements

sophisticated logical operations, e.g. (Number of TPC tracks > N) AND (ZDC signal > X)

Cut implements shortcut methods for setting ranges e.g..: SetPtRange(0.4,0.7)

9 Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

Cuts

„Base Cuts” are distinguishable by their property (enumerate type) If a given base cut is already present in the

list, and user wants to change its range

„Empty Cuts” Accepts everything All pointers to cuts by default point an empty

cut No necessity of checking if pointer is not NULL

Cuts use negative logic! True when accepted Carefully with logical base cuts

Ranges specify what we want to accept

10

Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

Cuts: advantages of this design

Cuts that ranges were specified are checked onlyConfiguration without necessity of recompilationVery easy to extend functionality User can implement his own library with

base cuts No necessity to reinstall all the software (e.g. on

all AliEn sites) because one more cut is needed One still can create a base cut that

implements complicated

11

Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

Cuts: AliEventCut Event properties

AliParticleCut Particle properties

AliPairCut Pair properties Apart of list of pair „base cuts” consists

pointers to 2 AliParticleCut They can point the same cut

12

Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

ReadersAnalysis takes data from an object of AliReader typeReader returns AODsThere are implemented following readers AliReaderESD

Reads ESD Also can read

AliReaderKineTree Reads Kinematics Tree

All currently implemented readers read AliAODParticlesUser can set a list of directories where to look for data By default it seeks in current directory

13

Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

ReadersMethod Next() reads the next event Returns non-zero value when no more events

available

Concretized Reader has to implement ReadNext()

Attempts to read next event Returns 0 in case of success

Rewind()

Readers do not buffer events by default If some kind of mixing is necessary given

analysis has to make a own copy for their use

14

Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

Other classes moved from HBTAN

AliTrackPoints List of spatial coordinates of a track in different

radii Used to asses

Average distance between two tracks If track was passing close to some element or other

track at given position

AliClusterMap Bit Vector describing cluster occupation in TPC

1 on nth field if track has a cluster on nth padrow Used to detect splitted tracks

AliEventBuffer FIFO queue for buffering events

Readers by default are not buffering

15

Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

Not yet implemented ideasAliRunAnalysis

Use AliLoader as utility object We are going to need more data for

analysis that we would like to share in folders Geometry, configuration parameters, etc. loaders can simplify this task

Loaders can be created on the fly by AliRunAnalysis Dependence on galice.root at all. is not a

problem Loaders can be hided behind

AliRunAnalaysis so user can be even unaware of their presence

16

Analysis project P. K. Skowroński Offline Week June 2004 30 June 2004

Not yet implemented ideasAliRunAnalysis

Must guarantee consistency when automatically paralleled Input data consistency check against

demanded set must be performed every event

Output data consistency Not to write the rubbish if error occurred

According to current schema output must be written as TH1’s or TTree’s