Project

General

Profile

SoftwareHints » History » Revision 4

Revision 3 (Dobbs, Adam, 02 February 2013 16:24) → Revision 4/17 (Dobbs, Adam, 02 February 2013 16:25)

h1. Software Hints and Tips 

 h2. Running a tracker simulation 

 There is a dedicated directory holding top level scripts for producing tracker data within MAUS at: 

 <pre> 
 bin/user/scifi 
 </pre> 

 For example to run a MAUS simulation of the tracker in the presence of a magnetic field do the following from the MAUS root directory: 

 <pre> 
 source env.sh 
 cd bin/user/scifi 
 ./simulate_scifi.py --configuration_file datacard_mc_helical 
 </pre>  

 The equivalent command for no magnetic field (straight tracks) is: 

 <pre> 
 ./simulate_scifi.py --configuration_file datacard_mc_straight 
 </pre> 

 h2. Datacard variables 

 Datacard variables control the various parameters passed to MAUS. The variables assume the default values set in src/common_py/ConfigurationDefaults.py unless overridden in a datacard or elsewhere.    Here are a few common variables:  

 * Number of spills. The number of spills to simulate can be set by editing the relevant datacard file and changing the variable 'spill_generator_number_of_spills'. 
 * The number of particles per spill is controlled by the beam variable. This has a number of sub-variables, two of which can be set to alter the number of particles per spill: 
 ** 'binomial_n' is the number of attempts at generating a track 
 ** 'binomial_p' is the probability an attempt succeeds 
 * Helical pattern recognition can be turned on or off by setting 'SciFiHelicalPROn' to 1 or 0 respectively 
 * Straight pattern recognition can be turned on or off by setting 'SciFiStraightPROn' to 1 or 0 respectively 

 h2. Accessing the output data 

 Data is output by MAUS either as "ROOT":http://root.cern.ch/ "ROOT":http://http://root.cern.ch/ or JSON documents.    In order for ROOT to understand the classes we have written a ROOT dictionary, built automatically by MAUS must first be loaded. In an interactive ROOT session this done with following command: 

 <pre> 
 .L $MAUS_ROOT_DIR/build/libMausCpp.so 
 </pre> 

 The equivalent command if using "PyROOT":http://root.cern.ch/drupal/content/pyroot is  

 <pre> 
 import libMausCpp 
 </pre> 

 An example ROOT session to open a data file would be: 

 <pre> 
 > .L $MAUS_ROOT_DIR/build/libMausCpp.so 
 > TFile f1("maus_output.root") 
 > TBrowser b 
 </pre> 

 The equivalent PyROOT session would be: 

 <pre> 
 > from ROOT import * 
 > import libMausCpp 
 > f1 = TFile("maus_output.root") 
 > b = TBrowser() 
 </pre> 

 The tracker MC data can then be found by browsing to: 
 <pre> 
 Spill:data:_spill:_mc:_sci_fi_hits 
 </pre> 

 The reconstructed data is stored under: 
 <pre> 
 Spill:data:_spill:recon:_scifi_event 
 </pre>