cdfinstallation.tex 3.58 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
\section{\LARGE Installation and Examples \label{sec:examples}}

\subsection{\LARGE Installation}
\noindent
The PAX kernel code resides in the CDF repository as the {\bf \red package PAX}.
In the following sections we present examples of PAX in combination with 
{\bf\red Stntuples}.
PAX can equally well be used within the {\bf\red AC++} framework.

\noindent
Get your release using the latest stable release
(this example uses the tcsh), e.g., \\
{\bf\blue setenv USESHLIBS 1 }\\
{\bf\blue source $\sim$cdfsoft/cdf2.cshrc }\\
{\bf\blue setup cdfsoft2 4.11.2 }\\
{\bf\blue newrel -t 4.11.2 rel4.11.2} \\
{\bf\blue cd rel4.11.2} \\
{\bf\blue Follow the instructions of the Stntuple page: build instructions} 
(access e.g. via the CDF fast navigator web page) to get a correct setup for the Stntuple. 
The relevant Stntuple code is compiled, and libraries are created (coffee time). \\
\\
Now get the PAX package \\
{\bf\blue addpkg -h PAX} \\
compile the PAX package and create a library \\
{\bf\blue gmake PAX.nobin} \\
Test the printout of some pseudo-fourvectors \\
{\bf\blue gmake PAX.tbin} \\
{\bf\blue paxdemo.exe} \\
\\
From the Stntuple repository get the subdirectory {\bf\red Stntuple/PAX}\\
{\bf\blue cvs co Stntuple/PAX} \\
and the correct makefile \\
{\bf\blue cvs up -r HEAD Stntuple/GNUmakefile}\\
In Stntuple/PAX you find the Stntuple steering file which contains, e.g., 
the data file you want to process\\
{\bf\red pax$\_$ana.C},\\
as well as our example module \\
{\bf\red TPAXAnaModule.cc}.\\
In the subdirectory {\bf\red Stntuple/PAX/PAX} you find the declarations \\
{\bf\red TPAXAnaModule.hh}.\\
The TPAXAnaModule source code contains the Stntuple user hooks 
{\bf\red BeginJob(), BookHistograms(), BeginRun(), Event(), DisplayEvent(), EndJob().} 
where you insert your analysis code.\\
Additional files with extension .cc contain examples, e.g., how to fill towers of the 
Stntuple calorimeter data as fourvectors into a PAX event interpretation:
{\bf\red FillCalorimeter.cc}.
Other examples fill electrons of the Stntuple electron finder {\bf\red FillElectrons.cc},
and vertices of the Stntuple {\bf\red FillVertices.cc}. \\
Further files with extension .cc contain example algorithms.
{\bf\red MergeElectrons.cc} shows how to combine information of the calorimeter 
towers with the results of the Stntuple electron finder.
In {\bf\red MakeW.cc} we provide an algorithm to reconstruct W bosons from their 
leptonic decay.\\
\\
Compile the example TPAXAnaModule.cc together with the other .cc files \\
{\bf\blue gmake Stntuple.$\_$pax} \\
From the fcdfsgi2 copy the example stntuple file (7MB, 100 events) into your release directory 
(we called it rel4.11.2 above)\\
{\bf\blue rcp fcdfsgi2.fnal.gov:/cdf/home/hirsch/top.stntuple.root .}\\
Run the example analysis by typing \\
{\bf\blue root.exe Stntuple/PAX/pax$\_$ana.C $>$ log$\_$file} \\
After one minute a display of four histograms should be visible on the screen
(Fig.\ref{fig:pax_example}).
With the mouse pointing to your command window hit\\
{\bf\blue .q} \\
to exit root. 
Now have a look at the log$\_$file: \\
{\bf\blue less log$\_$file } \\
For the first event the job printed various ways of accessing information to the calorimeter 
towers to the log file (lots of output).
For all further events it printed the leptonic decay chain of two possible 
solutions for a reconstructed W boson.
\begin{figure}[hhh]
\setlength{\unitlength}{1cm}
\begin{picture}(15.0,10.5)
\put(2,0.4)
{\includegraphics[width=13cm]{cdf_example}}
\end{picture}
\caption{ Results of the example module
\label{fig:pax_example}}
\end{figure}

\noindent
In section~\ref{examples} we elaborate on this example.