wiki:TopazPresentation
close Warning: Can't synchronize with repository "(default)" (/SVN/atlas does not appear to be a Subversion repository.). Look in the Trac log for more information.

Version 5 (modified by /O=GRID-FR/C=FR/O=CNRS/OU=LPSC/CN=Julien Labbe, 13 years ago) (diff)

--

Presentation of Topaz, Top Analysis Zoftware

Topaz is a c++ code dedicated to top analysis. It take (for now) in input the trees produced by TopView.

Topaz is divided into 3 sub-packages :

  • topview : reads TopView trees and apply selections.
  • analysis : applies multi-variable analyses (MVA) and make final histograms.
  • tools.

Executables are in trunk/bin (and sources in trunk/src/exe/). There are :

  • !MakeNtuple_x : reads TopView trees and apply selections (with topview library).
  • !DataAnalysis_x : merges MakeNtuple outputs for all processes.
  • !ComputeDiscri_x, PrepareTMVAInputs_x, TrainMVAs_x : prepare and trains MVA.
  • RunMVAs_x : applies MVA cuts.
  • !MakePlots_x, !DisplayPlots_x : make final plots.

The code is based on the class ParameterReader which allows to set parameters with text files. Theses parameters are read in executables before be given in libraries.

Executables could be run by hand or with the python scripts run_all (simple, for data analysis) or topaz (more complete, full chain). In any case you should configure your LD_LIBRARY_PATH and PYTHONPATH (source setup.[sh/csh]).

ParameterReader

Reader of parameters, mainly used in executables.

Parameters are defined in a type file (usually script/parameter.typ), set in parameter files (eg. script/makentuple.par) and used with GetParameter or in loop with itrNext.

See in html ParameterReader documentation these methods : AddTypeFile, AddParameterFile, GetParameter, itrNext. And take a look at script/parameters.typ

MakeNtuple

Accessible with bin/MakeNtuple parfile or topaz ntuple parfile (usually parfile = script/makentuple.par).

Create selections (type selection in analysesfile, this last is defined in parfile, usually script/makentuple/makentuple_analyses.par) with tree name and cuts (in another file given in analysesfile, eg. script/makentuple/makentuple_cuts_ttbarSemiLepSelection.par ).

Then loop on processes (type analysis in parfile, define output root file list of TopView input files and some other options) apply cuts and save result in outputdir. The main class used here is TopViewAnalyze.

See html documentation of TopViewAnalyze class and Selection class and for example.

For add your own selection...

Data analysis

---

Executable Parameter file(s) input(s) output(s)
Merge MakeNtuple outputs for all processes.
!DataAnalysis_x
Prepare and trains MVA.
!ComputeDiscri_x
PrepareTMVAInputs_x
TrainMVAs_x
Applie MVA cuts
RunMVAs_x
Make final plots
!MakePlots_x
!DisplayPlots_x

An exemple of the part of datareader_myAnalysis/Datareader.par which define the files used :

## input and output files of the analysis chain
## - DataAnalysis
string OutputDataAnalysis	DataReader.root
## - MVA
string InputPrepareMVAs		DataReader.root
string OutputPrepareMVAs	MVAInputs.root
string InputRunMVAs		DataReader.root
string OutputRunMVAs		RunMVA.root
## Plots
string InputMakePlots		RunMVA.root
string OutputMakePlots		Plots.root