bfemApp | ||
Introduction
Setup input
parameters |
IntroductionSimilar in purpose to pdrApp, bfemApp is a checkout package and application for running the reconstruction algorithms on balloon data stored in Root files. The current release version of bfemApp is v1r10. It runs on both Linux and Windows. It should be noted that the same reconstruction routines are used for both PDR runs and BFEM runs. This has been done, to insure that we are all using the same reconstruction algorithms for both full-flight PDR simulations and BFEM analysis. Obtaining the codeThe bfemApp package is available from the SLAC CVS repository. There are 3 ways to obtain bfemApp and start using it:
First of all - you must have a SLAC UNIX account.
Using bfemApp on the UW Glast Windows server bfemApp is also currently installed on the UW
Glast Windows server. You will need to checkout the bfemApp package into your
own user space. Using VCMT, you can do this by: Now to compile the code: Next you have to modify the jobOptions.txt file as appropriate for the type of run you desire to process. And finally, when running bfemApp on the UW Windows Terminal server - please do so from the command line - using the WinRun.bat file located in the bfemApp cmt directory. Installing and compiling bfemApp yourself It is a checkout package, meaning it can be used to obtain all of the related packages that bfemApp requires. Please see the directions outlined on the GLAST software how-to page. Note you must use the bash shell to run
bfemApp on linux!!!
Setup input parametersJust like pdrApp (and all programs that use Gaudi), there is a
jobOptions file that determines the input parameters for a partciular
run (job). The jobOptions file that comes with the bfemApp
distribution contains the parameters necessary to run bfemApp. The
jobOptions file is located in the bfemApp src directory.
Here is an example
of how this file may look. Note that there are 2 lines: These lines, include the 2 named files, so that all of the parameters available in these 2 input files, will be used for bfemApp. The file, basic_tkrmods.txt, sets up all of the necessary parameters for bfemApp to run, including calling the CAL recon twice once before and once after TkrRecon. Another file, called basic.txt contains the same basic parameters - except that CalRecon is called only after TkrRecon. So if for some reason, you do not wish to have CalRecon called twice, replace basic_tkrmods.txt with basic.txt. The file, display.txt, sets up the GUI - so if you do not desire to run with the event display, comment this line out. The jobOptions.txt file itself, is the file where users
provide their own parameters - or override parameters already set up in
the basic_tkrmods.txt and display.txt files. Most parameters will remain unchanged, however, there are some that
users will want to modify: Simulated versus Flight Data CalRecLogsAlg.PedFile = "$(CALRECONROOT)/calibration/pedstal_sim.txt"; Next add the following: To determine the number of events to process: Input and Output files: Reducing the amount of text output to the screen. This is handled by one parameter in the jobOptions file. This is common to ALL applications that run using Gaudi. Please see the pdrApp FAQ for more information. Running bfemApp with no GUI - for batch processing To run a batch job, requires shutting off the GUI. To do this,
one must modify the jobOptions file. The default jobOptions file,
uses the GUI. To prevent the GUI, comment out the following line
in the jobOptions.txt file: Running bfemAppTo run the bfemApp application, follow the directions provided on the GLAST software how-to page. Also, note that as with all applications, it is possible to run bfemApp from the command line on Windows as well. To do so:
UserAlgThis is an algorithm that is available with bfemApp. It is located in the bfemApp/src directory. Users may modify this algorithm and use it to create their own ntuple elements. As a Gaudi algorithm, this routine has full access to all data available on the Gaudi Transient Data Store (TDS). The main routine users will modify is the UserAlg::execute method. This function is called at the end of each event. Special Features: ApplicationMgr.TopAlg += { "UserAlg" }; The parameter, UserAlg.eventList, is a list of event
identifiers that you want to look at more closely in the bfemApp event
display. The format for specifying the event id is: OutputThe Root output from bfemApp consists of 2 files: ROOT Summary NtupleHere is a description of the current contents of the ROOT Ntuple. Reading the ROOT ntuple within ROOT Here is a simple example: An introduction to accessing the ROOT ntuple. A new Root macro has been created called NtupleAnalysis. This macro is designed so that users can customize the macro to apply their own cuts on the ntuple data. Running merit on the ROOT ntuple merit is a program that we used during the AO to analyze the ASCII ntuples - producing text output that summarizes the result of applying standard cuts on the output data, as well as calculating a PSF and the effective area for the run. For an example of how to run merit, please see the PDR FAQ. NOTE: merit applies standard cuts on the data that were optimized for the full flight geometry. Most likely, these same cuts will not produce optimal results when using balloon data. ROOT Recon Tree FileThis ROOT file has the same structure as was used for the 1999-2000 SLAC Test Beam, except the addition of storing the run number. The structure is determined by the reconRootData package, which contains the ROOT classes used to fill the Recon ROOT file. |