User Tools

Site Tools


root:backcat

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
root:backcat [2009/01/14 11:50] decianmroot:backcat [2009/02/03 12:20] (current) decianm
Line 6: Line 6:
 ===== Components ===== ===== Components =====
 There are 3 components: There are 3 components:
-  * A DaVinci algorithm (Bthat writes the decay string in a text-file. +  * BGCat: A DaVinci algorithm, that writes the decay string in a text-file. 
-  * A standalone C++ class, that puts the decay-string in a formatted LaTeX-table. +  * BGlatex: A standalone C++ class, that puts the decay-string in a formatted LaTeX-table. 
-  * A standalone C++ class, that converts the Monte Carlo particle numbers in a LaTeX-string with the particle name.+  * convPDGnumber: A standalone C++ class, that converts the Monte Carlo particle numbers in a LaTeX-string with the particle name.
  
 ===== DaVinci Algorithm BGCat ===== ===== DaVinci Algorithm BGCat =====
-This algorithm takes your reconstruced mother particle from CombineParticles, assigns the respective Monte Carlo particle and prints all daughters (with their respective daughters if they are not stable, etc. ) in ascending order, with antiparticles coming after particles. The decay strings are stored in a file name BG_cat.txt.+This algorithm takes your reconstruced mother particle from CombineParticles, assigns the respective Monte Carlo particle and prints all daughters (with their respective daughters if they are not stable, etc. ) in ascending order, with antiparticles coming after particles. The decay strings are stored in a file named **BG_cat.txt**.
 In your **options-file**, add: In your **options-file**, add:
 <code> <code>
Line 27: Line 27:
  
 ===== C++ Classes BGlatex and convPDGnumber ===== ===== C++ Classes BGlatex and convPDGnumber =====
-BGlatex takes the output text-file of BGCat and turns it into a LaTeX-table. convPDGnumber converts the Monte Carlo numbers into a string of LaTeX-code. Note that BGlatex needs convPDGnumber, while convPDGnumber can be used separately.+BGlatex takes the output text-file of BGCat and turns it into a LaTeX-table. [[root::convPDGnumber|convPDGnumber]] converts the Monte Carlo numbers into a string of LaTeX-code. Note that BGlatex needs convPDGnumber, while convPDGnumber can be used separately.
  
 ==== How to install it ==== ==== How to install it ====
-Copy the folders **BGlatexClass**, **convPDGnumberClass**, **obj** and **lib**  and the **Makefile** in ''/afs/cern.ch/user/d/decianm/analysis/tools/code'' in a directory of yours.+  * Copy the folders **BGlatexClass**, **convPDGnumberClass**, **obj** and **lib**the **Makefile** and the **PDGLaTeXTable.txt** in ''/afs/cern.ch/user/d/decianm/analysis/tools/code'' in a directory of yours
 +  * Type ''make''. Some warnings about deprecated headers will appear. 
 +  * After it is finished, you should have a **libToolClasses.so** shared object in the folder ''/lib''
 +  * Copy the **BG_cat.txt** of the DaVinci Algorithm in this directory. This is not absolutely necessary, but makes it a bit easier.
  
 +===== The makeTable()-method =====
 +The class BGlatex has the main method **makeTable()**. It takes five arguments:
 +  *The input file name. Default is: BG_cat.txt
 +  *The output file name. Defaul is: BG_cat.tex
 +  *The numbers of decays per table. This will create a second, third table after a certain amount of decays in the table, and prevents LaTeX from spreading the table over the bottom of the page. Default is: 15
 +  *The number of characters per line. This will create a second, third row in the table after a certain amount of characters per line, and prevents LaTeX from spreading the table of the right margin of the page. Default is: 20
 +  *Full LaTeX header. Choose true if you want to use the table standalone, false if you want to use it via ''/input'' in your LaTeX-document. Default is true.
  
 +==== Notes ====
 +At this moment (09/01/14), all anti-particle numbers are converted into particle numbers.
  
 +===== The PDGlatex()-method =====
 +The class convPDGnumber has the main method **PDGlatex()**, takes as an argument the Monte Carlo number and returns a string with the LaTeX-expression. This method is called internally by **makeTable()**.
  
 +==== Notes ====
 +At this moment (09/01/14), no anti-particles are implemented.
 +
 +===== How to use it in ROOT/C++ =====
 +The classes have been tested to work with ROOT. To use them, start ROOT and type:
 +  *''gSystem->Load("lib/libToolClasses.so")''
 +  *''BGlatex a''
 +  *''a.makeTable()'' (or with arguments)
 +  *''.q''
 +This should have created a file named **BG_cat.tex** in your directory.
 +
 +===== How to use it in Python =====
 +The classes have not really been tested in Python. The following procedure seems to work, though.
 +Copy the file **libToolClasses.so** in your working directory. Start python and type:
 +  *''import GaudiPython''
 +  *''GaudiPython.loaddict('STLRflx')''
 +  *''import sys, ROOT''
 +  *''import libToolClasses'' It will complain about "dynamic module does not define init function".
 +  *''from ROOT import BGlatex, convPDGnumber'' 
 +  *''a = BGlatex()''
 +  *''a.makeTable()'' (or with arguments)
 +  *CTRL-D
 +This should have created a file named **BG_cat.tex** in your directory.
 +===== Disclaimer =====
 +Most of the above programming was done in a Trial-and-Error fashion and things have not been extensively tested. Feel free to add comments or report bugs.
  
  
root/backcat.1231930216.txt.gz · Last modified: 2009/01/14 11:50 by decianm